不同主域下cookie为什么可以共存

image.png
https://segmentfault.com 域名下为什么会出现domain为baidu.com的cookie呢,cookie的设置应该是不能跨主域的?这是怎么实现的呢

阅读 1.4k
评论
    2 个回答

    cookie 是不能跨域,但这一是指的当前页面只能读取页面所在域的 cookie(即 document.cookie),二是指的浏览器在发送请求时携带在请求头里的,请求哪个域就只会带哪个域对应的 cookie。

    但谁也没说我一个页面里只能请求跟这个页面同域的资源啊。

    segmentfault.com 页面里植入一个百度的广告,这个页面就会给 baidu.com 发请求啊,响应结果里带 Set-Cookie 了或者是个 JS 在写 Cookie,自然而然不就有 baidu.com 的 cookie 了么。

    不然广告追踪咋做,百度之类的不就靠这个活着么。

      在application的cookie下面看到好几个域名,那说明该页面有嵌入其他的iframe。如果在一个域名下面能看到其他的cookie也很正常,因为来源可以是您正在访问的网站或者该网站所使用的服务,你只要向其他域发起请求并且其他域支持跨域,那么其他域的cookie就能够被设置到当前域名下
      这里推荐两篇文章,一篇是chrome官方对于cookie的解释,一篇是关于cookie如何进行跨域存取的

      https://www.digitalcitizen.li...
      https://blog.csdn.net/whzhaoc...

        撰写回答

        登录后参与交流、获取后续更新提醒

        相似问题
        推荐文章