Я единственный разработчик, поддерживающий веб-сайт, представляющий собой смесь классического ASP и .NET. Мне пришлось добавить несколько страниц .net в классическое приложение asp. Это приложение требует от пользователей входа в систему. Страница входа, написанная на классическом asp, создает файл cookie, который используются .net-страницами для идентификации вошедшего в систему пользователя, и сохраняет информацию в сеансных переменных для использования другими классическими страницами asp. В классическом ASP код cookie выглядит следующим образом:
response.cookies("foo")("value1") = value1
response.cookies("foo")("value2") = value2
response.cookies("foo").Expires = DateAdd("N", 15, Now())
response.cookies("foo").Path = "/"
В .NET-коде за кодом Page_Load я проверяю наличие cookie-файла, используя приведенный ниже код.
if (! IsPostBack) {
if (Request.Cookies ["foo"]! = null) {
...} else {// перенаправить на страницу создания cookie, cookiefoo.asp
}}
Подавляющее большинство времени это работает без проблем. Однако у нас есть пользователи, которые перенаправляются на страницу создания файлов cookie, поскольку код Page_Load не может найти файл cookie. Независимо от того, сколько раз пользователь перенаправляется на страницу создания файлов cookie, ссылающаяся страница все равно может найти файл cookie, foo. Проблема возникает в IE7, и я попытался изменить настройки конфиденциальности и cookie в браузере, но, похоже, не могу воссоздать проблему, с которой сталкивается пользователь.
У кого-нибудь есть идеи, почему это может происходить с IE7?
Спасибо.