2012-09-26 4 views
1

Привет, ребята, я сделал одно мобильное приложение, где у меня проблема с кнопкой браузера, на самом деле моя проблема в том, что пользователь пытался войти в систему с помощью предоставленные учетные данные, он перенаправляется на страницу меню, когда пользователь нажимает кнопку «Назад назад», пользовательский сеанс должен быть недействительным, но на странице входа он отображает кредитные и снова, когда я нажимаю кнопку «sumbit», перенаправляется на главную страницу, я за последние 2 дня много заработали по этой проблеме, но я понятия не имею, как это должно быть сделано, можете ли вы, ребята, помочь мне. Я пытался держать этот скрипт в страницу входаКак аннулировать сеанс на странице входа, когда пользователь нажимает кнопку «Назад» браузера

и мета теги в JSP на странице

, а также это в моем controller.xml

Благодарности

Рубиной.

+3

Вы не можете аннулировать сеанс пользователя, когда пользователь нажимает кнопку «Назад». Нажатие кнопки «Назад» не отправит HTTP-запрос на ваш веб-сервер. Он будет отображать предыдущую посещенную (кэшированную) страницу из локальной истории браузера. Поскольку в вашем случае последней посещенной страницей является экран входа в систему, совершенно нормально, что пользователь видит это вместе с учетными данными, которые он ранее ввел. Если я что-то неправильно интерпретирую, поведение вашего приложения, которое вы описываете, звучит вполне нормально. Не могли бы вы подробно рассказать о своей проблеме? –

+0

В моем приложении у меня есть страница входа, где я дал custId и пароль в качестве учетных данных, когда я нажимаю кнопку «Отправить», он перенаправляется на страницу главного меню снова. Я нажимаю одно из меню, которое я перенаправляю на службы, теперь, когда я нажимаю кнопку «Назад» браузера 2 раза я буду на странице входа с учетными данными, все еще находящимися на странице входа, я подумал, что это ошибка, которая не очищает учетные данные. Мне нужно перенаправить на новую страницу входа, когда пользователь нажимает кнопку «Назад», извините, если на моем английском языке есть какая-либо ошибка – Rubina

+0

Не беспокойтесь, это не ошибка. Это обычное поведение браузера. Браузер отображает пользователю последнюю посещенную страницу из истории локального браузера. Он не извлекает страницу с вашего веб-сервера. Это тоже не проблема безопасности. –

ответ

0

Привет ребята я нашел решение моей problem.please сохранить этот сценарий в заголовке вашей страницы входа

<script type="text/javascript"> 
     function backButtonOverride() 
{ 

    setTimeout("backButtonOverrideBody()", 1); 

} 

function backButtonOverrideBody() 
{ 

    try { 
    history.forward(); 
    } catch (e) { 

    } 

    setTimeout("backButtonOverrideBody()",50); 
} 
    </script> 

и в теге тела заменить этот

<body onLoad="backButtonOverride()"> 

это прекрасно работает для меня safari browser.thanks to stack over flow team

+0

Друзья, это проверено как с помощью браузера Safari, так и с firefox, он отлично работает для меня, в моем sceario он очищает учетные данные входа на странице входа, и когда я нажимаю на подменю, оно обновляется на той же странице, что и gmail.may be it будет полезен для кого-то, я размещаю здесь – Rubina

0

Посмотрите эту страницу как на обход вашей проблемы: http://viralpatel.net/blogs/disable-back-button-browser-javascript/

Вы можете увидеть демонстрацию того, как это ведет себя здесь: http://viralpatel.net/blogs/demo/javascript-disable-browser-back-button/

Что это делает, что он показывает следующий посещенной страницы в истории браузера, каждый раз, когда пользователь нажимает на кнопку назад. Это то, что вы ищете. Я подозреваю, что это тоже то, что делает gmail.

+0

lefty Я уже видел этот пример, и я попытался реализовать в своем приложении, я сохранил атрибуты сценария и тела на моей странице входа, но его нет в использовании, для вашей информации i я использую браузер Safari, я ответил на мой вопрос выше, который отлично работает в первый раз, когда я запускаю свое приложение, когда я очищаю сервер и снова запускаю его, я полностью смущен – Rubina

+0

Я также использую сафари и демоверсию страница работает нормально. Вы, должно быть, делаете что-то неправильно. Проверьте код на наличие опечаток или подобных ошибок. –

+0

О, проверьте, что у вас нет отключенного javascript! –

Смежные вопросы