Общие > Веб-технологии

Запрет мультисессий

(1/1)

Kettel:
Как запретить открывать более одного окна браузера для определенного хоста? Надо чтобы работало в IE5+.

CGVictor:
Kettel
Запретить никак.
Можно использовать нечто вроде challenge-response для контроля работы только в одном окне.
Т.е. при выводе документа изменяется запись в базе. На некий id. Он же выдается в документ. Если переданный документ возвращает на сервер неверный id, значит, ранее был передан такой же (и запись в базе уже была изменена), поэтому в документ надо выдать только window.close();
Но
1) коряво, т.к. открыть можно (потом работать в двух нельзя)
2) практически всегда можно обойтись без этого

Kettel:
Ок, но как хотя бы отследить что юзер открыл второе окно для того  же хоста?
К сожалению, обойтись без этого нельзя, т.к.
1) это не сайт, а веб-приложение
2) я не могу повлиять на изменение ТЗ

CGVictor:
Kettel
Да если и веб приложение.
Можно формировать вывод полностью AJAx-ом, а загружать пустой документ (только с библиотекой AJAX; о, кстати, ничего выход)
Тогда проверять то же самое при обращении AJAX к серверу за данными, и отдавать только при положительной проверке id.

А запретить именно открытие - смысла нет. Я могу "тупо" запросить тот же url другим приложением.

Хотя запретить можно. Копай MSDN, плюс можно использовать открытие модального диалога: мне помнится, там были ограничения на открытие ссылок и окон.

Навигация

[0] Главная страница сообщений

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 
Перейти к полной версии