Mcbaloo Ответов: 2

... как отобразить сообщение об ошибке истечения срока действия сеанса на странице входа в систему.


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

Что я уже пробовал:

Пока не могу придумать ничего, кроме перенаправления пользователей на страницу входа в систему по истечении сеанса

2 Ответов

Рейтинг:
10

Karthik_Mahalingam

в то время как перенаправление добавить query string к url-адресу.

Response.Redirect("Utility.aspx?SomeKey=1");

и проверьте наличие строки запроса на странице входа в систему page_load событие, основанное на значении, которое вы должны показать/скрыть сообщение

protected void Page_Load(object sender, EventArgs e)
        {
            lblMessage.Visible = false;
            var value = Request.QueryString["SomeKey"];
            if (value != null)
                lblMessage.Visible = true


Mcbaloo

Работать отлично. Спасибо

Karthik_Mahalingam

добро пожаловать :)

Рейтинг:
0

F-ES Sitecore

Нет надежного способа сделать это, поскольку веб не имеет состояния, но вы можете проверить свойство http referer, чтобы увидеть, был ли запрос спровоцирован с другой страницы. Честно говоря, хотя я бы просто не стал беспокоиться. Люди привыкли к тому, что их сбрасывают на экран входа в систему, когда срок действия их логина истекает. Я был бы более склонен тратить усилия на использование файлов cookie для управления аутентификацией, чтобы их аутентификация могла длиться после сеанса и заканчиваться только тогда, когда они решат выйти из системы или закрыть свой браузер.