Chrome为什么会忽略Set-Cookie标头?

And*_*son 8 cookies google-chrome http setcookie

Chrome浏览器具有忽略Set-Cookie标头的悠久历史。其中一些原因被称为错误并已修复,而其他则是持久性的。它们都不容易在文档中找到。

  • 302重定向中不允许使用Set-Cookie
  • 如果主机是本地主机,则不允许使用Set-Cookie
  • 如果Expires超出可接受范围,则不允许Set-Cookie

我目前正在努力让chrome接受一个简单的会话cookie。Firefox和Safari似乎接受Set-Cookie的几乎所有符合RFC的字符串。Chrome顽固地拒绝承认Set-Cookie指令甚至是根据请求发送的(在开发者工具(网络)中不会显示)。卷曲看起来很好。

那么,有没有人拥有1)跨浏览器Set-Cookie格式的现代最佳实践,或2)有关导致Chrome浏览器出现问题的更多信息?

谢谢。

LMB*_*LMB 3

有一件事情让我很困扰,但它不在你的清单上:如果你尝试通过 HTTP 设置安全 cookie localhost,Chrome 会拒绝它,因为你没有使用 HTTPS。

这是有道理的,但是对于本地开发来说很烦人。(Firefox 显然对这种情况做了例外,并允许通过 HTTP 设置安全 cookie localhost)。