Резюме
ASP.Net не отправляет обратно заголовок Set-Cookie
при использовании IE 10. Это означает, что, например, вы не можете войти на сайт ASP.Net с помощью IE10, например, при использовании проверки подлинности с помощью форм.
Деталь
В настоящее время мы тестируем одно из наших устаревших веб-приложений для IE 10 [Preview 2].
При попытке входа в систему с помощью проверки подлинности с помощью форм мы не получаем заголовок Set-Cookie
в ответе, если пользовательский агент соответствует IE 10. Мы пробовали это с пустыми .Net 2 и .Net 4 сайт.
Поскольку мы не могли / не могли поверить в это, мы даже вручную запустили следующий HTTP-запрос через telnet
- после использования всех обычных инструментов - и получили тот же ответ.
GET http://test.ourdomain.co.uk/ HTTP/1.1
Accept: */*
Host: test.ourdomain.co.uk
User-Agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)
Content-Length: 0
Приведенный выше HTTP-запрос не возвращает Set-Cookie
в ответе. Но если мы просто изменим User-Agent на Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/6.0)
, это сработает!
Может кто-нибудь еще повторить это? Я не могу найти ни одной известной проблемы с файлами cookie IE10, кроме проблемы, которая влияет на нестандартные шаблоны URL.
Исправление
После того, как devio опубликовал исходный ответ с обходным решением, nullptr подтвердил, что теперь есть исправление для этого .
http://support.microsoft.com/kb/2600088
Я добавил исправление к основному вопросу, так как оно удобнее для использования в будущем, но, пожалуйста, проголосуйте за упомянутых пользователей.