我在IE 9中遇到这个奇怪的问题。我有一个允许用户登录的网站,也可以在后台使用Web服务通过单独的网站登录。登录后,将创建一个cookie。在提琴手中,我可以看到用户已从第三方网站登录到我的网站,并创建了cookie。第三方网站进行ajax调用,并在我的域中创建cookie。
但是当我从第三方网站点击指向我网站的链接时,会再次显示登录页面。我写了一个调试代码,在页面中说明cookie不存在,但我可以在IE设置中看到cookie确实存在。 Cookie会在24小时后到期。
我该如何解决?顺便说一句,它在大多数其他浏览器中运行良好,包括IE8,IE7,Chrome。
这类似于 - IE9 Separate cookies for third party request - 但那里没有回应。
答案 0 :(得分:0)
IE 9+中引入了一个限制。它隔离不同的区域以访问彼此的数据。例如,如果在example.com中为domain:example.com创建了cookie,则a.example.com如果区域不同(一个是Intranet,一个是受信任的等),则无法访问cookie。您可以在Internet选项中检查区域 - >安全选项卡。
有关详细信息,请查看Cookie Sharing in Cross-Zone Scenarios