document.cookie没有存储cookie?

时间:2011-05-10 12:25:54

标签: javascript cookies

document.cookie只能在服务器上运行吗?警报似乎没有输出我的cookie。

document.cookie = "d=e";
alert(document.cookie);

2 个答案:

答案 0 :(得分:8)

某些浏览器在使用file协议的文档设置时不会遵循Cookie。

  

Chrome故意禁用Cookie   在file://,出于各种原因。   当我们写下我们的cookie支持时,   正确的行为何时不清楚   处理文件共享之类的事情。   我们在file://上找到了cookie   相当罕见,它有一些   消极安全影响。

     

然而,您可以使用   命令行标志   --enable文件饼干。

     

Cookie 严格 HTTP   根据RFC 2109的机制   应该没有合理的期望   让他们为其他协议工作   比HTTP更少,文件:///,以及它   目前尚不清楚他们的行为   应该是什么,以及什么安全规则   区分化应该适用。

Source

答案 1 :(得分:2)

Cookie与特定域相关联。如果您只是将HTML文档作为文件打开,那么浏览器如何知道将cookie与哪个域相关联,或者应该允许该文件访问哪些cookie?

所以是的,出于所有实际目的,如果您的HTML文档由服务器提供/通过HTTP URL访问,您的浏览器将只允许存储和检索cookie,以允许它确定某种域以关联cookie (s)with。