Web 技术研究所

我一直坚信着,Web 将会成为未来应用程序的主流

Cookie 差一点

  最近看到有人踩到这个坑,于是记录一下。有个同学想删除 Cookie,可是怎么也删不掉,看了看 Domain、Path 之类的都是正确的,为什么会删不掉呢?其实差一点就可以删掉了的,可万万没想到就差了那么「一点」。果然 Debug 时眼神也很关键。
  在 Chrome 开发者工具的 Resource 面板中可以看到当前 Cookie。可是同样的 Domain 和 Path 下却有两个同名的 Cookie,这是什么鬼?

  区别就在于 Domain 前的那个「点」上。
  在设置 Cookie 时,如果显式地设置 Domain,那么此处就会多出一个点。比如 document.cookie = 'a=2; Domain=web-tinker.com';   但如果缺省 Domain,则不会有这个点。 document.cookie = 'a=1';   我以前说过「父域的 Cookie 可以在子域共享」其实不是完全正确的。只有显式设置了域名的父域 Cookie 才可以在子域中访问。也就是前面带「点」的可以共享,而缺省 Domain 的 Cookie 则是当前域名私有的,不会共享。由于它们的作用域不同,所以确实是两个不同的 Cookie。
网名:
3.80.32.*
电子邮箱:
仅用于接收通知
提交 悄悄的告诉你,Ctrl+Enter 可以提交哦
神奇海螺
[查看全部主题]
各类Web技术问题讨论区
发起新主题
本模块采用即时聊天邮件通知的模式
让钛合金F5成为历史吧!
次碳酸钴的技术博客,文章原创,转载请保留原文链接 ^_^