Сеанс очистки IE - PullRequest
       2

Сеанс очистки IE

1 голос
/ 28 октября 2010

У меня проблема с очисткой сессии только в браузере IE (я тестировал в разных версиях IE (IIS 6 и 7) - это хорошо работает в Firefox и Opera).
У меня есть 4 маленьких скрипта (я показываю коддля лучшего объяснения, где у меня проблема):
1. default.asp - он показывает только значение сеанса:

<%@LANGUAGE="VBSCRIPT"%>

<%
Session.Timeout=60
Response.Write("Session value: "&Session("site"))
%>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
</body>
</html>

2.setsession.asp - установить Session ("site")

<%@LANGUAGE="VBSCRIPT"%>
<%
Session("site")= "error"
Response.Redirect("default.asp")
%>

3.clearsession.asp - назначить Session ("site") пустой строкой

<%@LANGUAGE="VBSCRIPT"%>
<%
Session("site")=""
Response.Redirect("default.asp")
%>

4.site.asp- Я не хочу показывать этот сайт, если Session ("site") - пустая строка

<%@  language="VBScript" %>
<%
if Session("site") ="" then
Response.Redirect("default.asp")
end if
%>

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
<%Response.Write("Session value: "&Session("site"))%>    
</body>
</html>

В IE, даже если sesion установлен на "", он всегда показывает site.asp (не делает)t redirect), и это показывает, что для сеанса установлено значение «error».Это ведет себя как в IE, я не могу передать значение сеанса между страницами.В Firefox и Opera все в порядке.Не могли бы вы объяснить, где проблема и как ее можно решить?

Ответы [ 3 ]

1 голос
/ 28 октября 2010

Сеанс на стороне сервера, но IE на стороне клиента, это не будет проблемой.Может быть, IE кеширует больше, чем другие браузеры, поэтому не стоит повторять запрос некоторых страниц, чтобы код не выполнялся.Вы можете добавить заголовки кеша, чтобы клиенты не кешировали.

0 голосов
/ 28 октября 2010

Единственная проблема на стороне клиента, которую я вижу, - это кэширование в браузере.Попробуйте Ctrl + F5, чтобы принудительно обновить, чтобы повторно отправить запрос, чтобы увидеть, наблюдаете ли вы то же поведение в IE

0 голосов
/ 28 октября 2010

Если проблема только в IE, значит, это проблема на стороне клиента. Не нужно исправлять код.

Проверьте, включены ли файлы cookie и работает ли сеанс для других сайтов. Проблема в настройках вашего браузера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...