кнопка возврата сервера работает после выхода из системы asp.net

#asp.net

#asp.net

Вопрос:

На моем веб-сайте, когда я выхожу из панели администратора, но кнопка возврата сервера работает, когда я нажимаю на кнопку возврата сервера (chrome), тогда он входит в систему.

Как отключить сеанс и файлы cookie?

Комментарии:

1. Чтобы задать хороший вопрос, вам нужно хотя бы рассказать нам, что вы пробовали. Вы также можете захотеть опубликовать соответствующие фрагменты вашего кода вместе с этим, например, код, который обрабатывает выход из системы.

Ответ №1:

Попробуйте с помощью функции abandon(),

  Session.Abandon();
  

Используйте приведенную выше строку в событии нажатия кнопки выхода.

Комментарии:

1. Затем покажите событие нажатия кнопки выхода с исходной страницей. Если вы использовали это, уверен, вы не попадете на предыдущую страницу. Потому что это очистит весь сеанс и кэши, которые хранятся на стороне клиента.

Ответ №2:

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

Вы, должно быть, заметили, что как только вы нажимаете любую ссылку или кнопку на странице, которая отображается после обратного нажатия браузера, это должно было вернуть вас на страницу входа. Если этого не происходит, значит, вы не прекращаете сеанс при выходе из системы, используйте Session.Abandon() для этого.

Однако есть способ сделать это, используя перечисленные ниже шаги:

  1. Создайте страницу signout.aspx или что-то в этомроде.
  2. Когда пользователь нажимает на Logout, перенаправляйте его сначала на этот файл signout.aspx.
  3. Очистите всю сессию на page_load из signout.aspx и на стороне Javascript этой страницы перенаправьте пользователя на Login.aspx при загрузке документа вы можете использовать document.ready Jquery для этого.

Теперь, когда пользователь нажмет «Назад», он будет перенаправлен на signout.aspx, и благодаря этому Javascript / Jaquery он будет перенаправлен обратно на Login.aspx.

Ответ №3:

Попробуйте следующий код на странице входа в систему

 protected void Page_Init(object sender, EventArgs e)
{
    Response.Cache.SetExpires(DateTime.UtcNow.AddMinutes(-1));
    Response.Cache.SetCacheability(HttpCacheability.NoCache);
    Response.Cache.SetNoStore();
}