Как я могу изменить сессию, когда открыть URL-адрес в другой вкладке в asp.net - PullRequest
1 голос
/ 30 августа 2011

Я разрабатываю одно веб-приложение в asp.net. Я открываю все страницы во всплывающем окне. Я хочу закончить сеанс или изменить значение сеанса, когда кто-то скопирует URL-адрес и вставит его в другую вкладку. Как я могу это реализовать? Пожалуйста, помогите мне.

Ответы [ 2 ]

1 голос
/ 30 августа 2011

Простой способ - проверить Request.UrlReferrer .Реферер будет пустым, если пользовательская копия вставит URL-адрес.

Несколько моментов, которые следует учитывать перед использованием этого:

  1. Предоставьте исключения для любых страниц, которые могут быть непосредственно введеныПользователь.Например, страница входа в систему или страница, на которую можно добавить закладку
  2. Я полагаю, что всплывающее окно может быть открыто из Javascript без реферера.Убедитесь, что ваш существующий код не использует этот метод для открытия всплывающего окна.

Общий способ определить, открыл ли пользователь новую вкладку, см. здесь * 1015.*

0 голосов
/ 31 августа 2011

Я решил эту проблему с помощью

   string referer = Request.ServerVariables["HTTP_REFERER"];
        if (string.IsNullOrEmpty(referer))
        {
            Response.Redirect("../Index.htm");
        }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...