什么会导致浏览器不遵守 set-cookie 响应 headers?

What could cause a browser to not respect set-cookie response headers?

我有一个 Web 服务器 returns 200 OK 有一堆 set-cookies,还有一个 HTML 页面从同一服务器加载一堆脚本。

但是,从该 HTML 页面生成的后续加载会在其 HTTP 请求中提交不同的 cookie headers。

可能是什么原因造成的?肯定有一些政策我错过了,但我不明白为什么它适用于某些页面而不适用于其他页面?

我使用 chrome 作为浏览器,但这种行为也发生在 iOS,所以我猜这不是特定于浏览器的。

因此,经过大量阅读和故障排除后,事实证明,当您未设置 cookie 路径时,它将默认为原始请求 set-cookie 发送到的任何路径。而且因为我的资源路径有不同的路径,所以没有发送 cookie。

添加 Path=/ 解决了我的问题。当然,如果您不希望所有页面都可以访问您的 cookie,这很糟糕,但我的网络服务器要求请求附带 cookie,因为它们是敏感数据(出于安全原因)。