首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >IE10用户代理导致ASP.Net不发回Set-Cookie (IE10不设置Cookie)

IE10用户代理导致ASP.Net不发回Set-Cookie (IE10不设置Cookie)
EN

Stack Overflow用户
提问于 2011-08-08 22:33:37
回答 5查看 48.1K关注 0票数 91

摘要

当使用IE10时,ASP.Net不发送回Set-Cookie头。这意味着,例如,当使用窗体身份验证时,您不能使用IE10登录到ASP.Net站点。

Detail

我们目前正在针对IE 10 Preview 2测试我们的一个遗留web应用程序。

当尝试使用表单身份验证登录时,如果用户代理是IE 10的用户代理,则在响应中不会得到Set-Cookie标头。我们已经在空白的.Net 2和.Net 4站点上尝试过此方法。

因为我们不能或不会相信,我们甚至在使用了所有常用工具之后,通过telnet手动运行了follow HTTP请求,并得到了相同的响应。

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),它就可以工作!

其他人能复制这个吗?除了影响非标准IE10模式的问题之外,我找不到任何关于URL的已知问题。

热修复

devio发布了原始答案后,通过解决方法,nullptr已经确认现在有一个hotfix for this

http://support.microsoft.com/kb/2600088

我已经将修补程序推广到了主要问题,因为它只是为了方便将来的参考,但请对提到的用户投上一票。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2011-08-08 23:19:52

MS Connect上找到此条目,则该行为是一个公认的错误。

建议的解决方法(来自条目):

==解决方法==

同时,为了让它正常工作并避免将来出现类似的问题,我使用了一个包含以下内容的文件~\App_Browsers\BrowserFile.browser:

<browsers>
<browser refID="Default">
<capabilities><!-- To avoid wrong detections of e.g. IE10 -->
<capability name="cookies" value="true" />
<capability name="ecmascriptversion" value="3.0" />
</capabilities>
</browser>
</browsers>
票数 66
EN

Stack Overflow用户

发布于 2013-03-20 05:07:41

问题出在一些IIS实例认为IE10是一个无cookies的浏览器(即不支持cookies)。在我们的问题案例中,服务器设置了身份验证cookie并将其发送回浏览器,但随后忽略了后续请求中的cookie。

解决方案是要么修补浏览器功能,让它知道IE10可以做cookies (在本页的另一个答案中概述),要么改变默认行为,强制它使用cookies,即使它认为浏览器不能做cookies。

我们刚刚在web.config中的forms部分添加了以下内容:

cookieless="UseCookies"

<authentication mode="Forms">
  <forms name=".AUTH" cookieless="UseCookies" loginUrl="/" timeout="10000" path="/" />
</authentication>
票数 71
EN

Stack Overflow用户

发布于 2013-03-21 00:28:06

谢谢你的帮助。它不起作用。

在命令提示符C:\WINDOWS\microsoft.net\Framework\v2.0.50727>aspnet_regbrowsers.exe -i

  • Restart
  1. 中,我将文件从site复制到了IIS.
  2. 对该站点进行了测试,并且运行正常,没有出现任何错误。

再次感谢您的反馈

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6983732

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档