balajit12 Ответов: 2

пользователь закрывает браузер, не нажимая кнопку выхода из системы.


Привет,

Я вставляю данные пользователя, когда пользователь входит в систему на моем веб-сайте.

В момент выхода пользователя из системы я должен обновить статус выхода из системы .

если пользователь выходит из системы правильно, я могу поймать статус выхода из системы, но если пользователь закрывает браузер, не нажимая кнопку выхода, то как я могу поймать пользователя, который вышел из системы??

Пожалуйста, помогите мне, как решить эту проблему

2 Ответов

Рейтинг:
2

pramod.hegde

Привет,
Вы можете захватить событие нажатия кнопки закрытия браузера с помощью JavaScript и вызвать в нем метод выхода из системы.
Что-то вроде этого,

window.onbeforeunload = function() {
// make an Ajax call to server side Logout method.
// In the Logout method you can get/set the success status
}

Вы можете сделать Ajax-вызов метода code behind. Пожалуйста, проверьте следующую ссылку,
http://sandblogaspnet.blogspot.no/2009/03/calling-aspnet-server-side-function.html[^]


Рейтинг:
1

OriginalGriff

Вы не можете, не надежно.
Есть событие javascript, которое вы можете поймать (onunload), но оно работает в IE, но не для FireFox, и есть onbeforeunload, который работает в Firefox, но нет простого "сделай это", которое работает, гарантировано, для всех браузеров. Чтобы добавить к этому, что делать, если пользователь отключает маршрутизатор, или отключается питание, или уходит в туннель, или разряжается аккумулятор? Что произойдет, если ваше приложение выйдет из строя до того, как он выйдет из системы?

Используйте тайм-аут сеанса для выхода пользователя из системы, если он этого раньше не делал, и позвольте системе работать корректно, если пользователь пытается войти в систему без соответствующего выхода.