internet-explorer - IE11 document.cookie 不创建 cookie

标签 internet-explorer cookies

我无法使用 IE11 成功创建 document.cookie。

以下测试代码适用于 FF、Chrome 和 Safari。这是测试文件中唯一的代码:

function isCookie() {

    document.cookie = "testcookie";
    var cookieEnabled = (document.cookie.indexOf("testcookie") != -1) ? true 
      : false;
    alert(cookieEnabled); //alert true
    alert(document.cookie.indexOf("testcookie"));  //alert 0
    alert(document.cookie); //alert testcookie
    return (cookieEnabled);
}
isCookie();

我有一台 Mac 并通过 VirtualBox 使用 IE11 以及一台单独的 Windows 7 笔记本电脑进行测试。在这两种情况下,上面的警告消息仅在 IE 中为“false”和“-1”。

我检查了 IE 安全设​​置并关闭了保护模式,并将安全性更改为接受来自所有站点的 cookie。修改后重启IE,还是无法写入document cookie。

我正在查找 Local\Microsoft\Windows\Temporary Internet Files。我看到其他网站上已经有一些 cookie,但上面的测试中没有“testcookie”。

有什么想法吗?

最佳答案

我希望这可以节省我花在这个问题上的时间。

问题是 Microsoft 不允许在 URL 中包含下划线时写入 cookie。是的。

我通过将暂存 URL 更改为使用“-”而不是“_”来确认这一点,现在可以在 IE 中成功写入和读取 cookie。

一篇关于这个问题的文章:https://ma.ttias.be/internet-explorer-wont-allow-cookies-subdomains-underscores/

关于internet-explorer - IE11 document.cookie 不创建 cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49138863/

相关文章:

internet-explorer - Jquery Ajax 请求未在 IE 中发送

c# - 更改 Internet Explorer 新标签页的默认 url

css - 在 Internet Explorer 9 中使用 -ms-filter

cookies - 在渲染 html 页面之前设置 go-gin

delphi - 如何为 Chromium 嵌入式浏览器的不同实例设置不同的 cookie

javascript - 一次性设置/获取/检查由用户输入(文本框)生成的多个 cookie

javascript - 如何使用 JQuery 或 JavaScript 简单地检测浏览器类型?

css - 当前位置:固定在IE 6/7/8和mozilla上工作

ruby-on-rails - 用于 rails 的 Evercookie

python - 在谷歌应用程序引擎中加载cookie