gpt4 book ai didi

javascript - IE 10 不设置/发送 cookie(从 js)到服务器

转载 作者:行者123 更新时间:2023-12-04 05:51:09 25 4
gpt4 key购买 nike

不久前,我将一个大型开发项目从使用 cookie 改为使用 localStorage。然而,我意识到我有点狂热,服务器上实际上需要一些 cookie。

我已将这些从 localStorage 设置回使用 cookie。然而,在此期间,我在我的 Win7 开发箱上安装了 IE10,并将我的开发服务器从 IIS Express 切换到本地运行的 ISS 7.5。

为了让 Fiddler 拦截我的本地流量,我通过 URL 访问开发页面

http://local_iis/ 

在 Hosts 文件中标识为:

local_iis 127.0.0.1

然而,当使用此测试页面从该域访问页面时,IE10 无法设置 Cookies:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript">
document.cookie = "test=value";
alert(document.cookie); // gives "" in IE 10
</script>
</head>
<body>

</body>
</html>

然而,从以下任何一个运行我的测试页面都会设置 cookie(并提醒该值)

http://localhost/
http://127.0.0.1/

cookie 在 FF 和 Chrome 中都被正确设置和提醒,因为我只使用 IE 进行开发和测试我已经更改了安全设置以允许隐私选项卡中的所有内容,以及下面的本地 Intranet 和受信任的站点区域安全选项卡。我也已将 local_iis 添加到受信任的站点。

仍然没有设置 cookie。

有人知道为什么吗?

最佳答案

根据另一个题目找到here并跟进提到的 MS 博客 there发生这种情况是因为您的机器名称中有下划线!很邪恶吧?

看这个:

问题 5:当主机名/域包含下划线时,IE 不会设置 cookie?

答:正确。从技术上讲,下划线不是 DNS 字符,虽然 Windows 允许您在命名计算机时使用下划线,但它会警告您这样做可能会导致问题。其中一个问题是 WinINET 会阻止在此类域上设置 cookie 的尝试。

关于javascript - IE 10 不设置/发送 cookie(从 js)到服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15408121/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com