Я запускаю сайт DNN7.1. У меня есть регулярный веб-сайт. Я добавил страницу, которая выступает в качестве страницы входа для мобильных пользователей. Я использую JQuery Mobile 1.3.2 на мобильных страницах, включая эту страницу входа в систему для мобильных устройств. Если пользователь переходит на эту страницу и вводит имя пользователя и пароль, он работает правильно и перенаправляет их на нужную страницу, отправленного по URL с помощью строки запроса, например:Перенаправление не работает с JQuery Mobile
http://localhost/Mobilelogin?url=http://localhost/somePage
это правильно перенаправляет
http://localhost/somePage
Теперь я хочу добавить возможность, когда пользователь может напрямую отправлять свое имя пользователя и пароль вместе с URL-адресом, который он хочет перемещать, страница входа должна проходить аутентификацию с использованием имени пользователя и пароля и после успешного перенаправления его на URL-адрес (используя asp.net Response.Redirect), в формате
http://localhost/Mobilelogin?u=username&p=password&url=http://localhost/somePage
Проблема заключается в том, что она работает нормально, если пользователь не вошел в систему, но если он уже вошел в систему, а затем использует тот же URL-адрес (который имеет имя пользователя и пароль), перенаправление не работает. Я попытался отключить ajax, используя следующий код, поскольку я прочитал перенаправление, и JQM не работает.
$(document).on("mobileinit", function() {
$.extend($.mobile, {
linkBindingEnabled: false,
ajaxEnabled: false
});
});
Но он все еще не работает. Может кто-нибудь, пожалуйста, дайте мне знать, что мне нужно сделать, чтобы сделать эту работу.
Я пробовал отлаживать модуль входа в систему, который написан на C#, когда пользователь вводит URL-адрес, когда он не вошел в систему, он вызывает загрузку страницы и попадает в точку останова, но при входе в систему и ввода URL-адреса точка останова никогда не ударил. Похоже, что браузер даже не связывается с сервером. Я новичок в JQM, я думал, что отключить ajax глобально будет всегда поражать сервер, чтобы получить информацию. Разве это не так, как это работает? Как я могу сделать перенаправление в моем случае. Любая помощь приветствуется.
У вас есть страница входа в ** незашифрованное ** соединение ?! Это достаточно плохо, но тогда вы хотите, чтобы люди передавали имена пользователей и пароли в URL-адресе? Вы могли бы просто передать свой сайт хакерам. Прежде чем приступить к дальнейшему рассмотрению, найдите основные элементы безопасности. – mason
Хотя это действительно не решает проблему, msm8bball прав - вы просто не можете передавать имена пользователей и пароли в URL-адресе, а ваша страница входа в систему должна быть защищена SSL, поскольку она обрабатывает информацию о безопасности. – sh1rts
Я знаю, что прохождение имен пользователей и паролей в URL-адресе не является безопасным, но мы тестируем что-то для демонстрационного и тестового серверов, не имеющих сертификата SSL. Это не пойдет на производство. –