У меня проблема с отключением кнопки возврата браузера при выходе

0

Я использую mvc4, и перед выходом из системы я столкнулся с проблемой отключения кнопки возврата, ссылка на выход находится в представлении _Topheader, здесь я написал код javascript,

<a href="/Account/LogOff" onload="noBack();" onpageshow="if (event.persisted) noBack();" onunload="">Logout
</a>
<script type="text/javascript">
   window.history.forward();
   function noBack() { 
     window.history.forward(); 
   }

который отключает всю кнопку "Назад" после выхода из системы, а также в случае, если я вхожу в систему и переключаюсь на разные страницы, здесь также отключается кнопка "Назад". Мне нужно только отключить его после LOg не каждый раз.

Пожалуйста, предложите решение для этого.

  • 0
    почему вы хотите предотвратить заднюю кнопку? чтобы они не могли вернуться без входа? Если это так, вы должны решить это по-другому, так как JavaScript может быть отключен = нет безопасности!
  • 0
    Hii ... Если это не правильный путь, пожалуйста, предложите какое-нибудь решение, чтобы решить эту проблему?
Показать ещё 1 комментарий
Теги:
back-button
asp.net-mvc-4

3 ответа

0
Лучший ответ

используйте следующий код после выхода из системы.

 function DisableBackButton() {
        changeHashOnLoad()
    }
    DisableBackButton();
    window.onload = DisableBackButton;
    window.onpageshow = function (evt) { if (evt.persisted) DisableBackButton() }
    window.onunload = function () { void (o) }
    function changeHashOnLoad() {
        window.location.href += "#";
        setTimeout("changeHashAgain()", "50");
    }
    function changeHashAgain() {
        window.location.href += "1";
    }
    var storedHash = window.location.hash;
    window.setInterval(function () {
        if (window.location.hash != storedHash) {
            window.location.hash = storedHash;
        }
    },
    50);
0

Вот статья о том, как сеанс "Web-безопасность" работает довольно просто с ASP.NET MVC 4

Главное, с атрибутом [Authorize] вы можете защитить контроллер, поэтому, если пользователь выходит из системы. Сервер отклонит запросы на эти страницы.

надеюсь, это поможет.

0

Когда вы покинете сеанс, он уничтожит. Отключите кнопку "Назад", когда сеанс не используется. Сессия становится установленной при входе пользователя в систему, в это время активирует кнопку возврата. Я не знаю, поможет ли это вам?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню