我无法使用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,仍然无法获取文档cookie。
我正在寻找Local \ Microsoft \ Windows \ Temporary Internet Files。我从其他网站看到了一些饼干,但上面的测试中没有'testcookie'。
有什么想法吗?
答案 0 :(得分:1)
我希望这可以节省一些人花在这个问题上的时间。
问题在于,当URL中包含下划线时,Microsoft不允许写入cookie。是的。
我通过更改暂存网址来确认这一点,以使用' - '而不是' _'现在可以在IE中成功编写和读取cookie。
有关此问题的文章:https://ma.ttias.be/internet-explorer-wont-allow-cookies-subdomains-underscores/