为什么 Chrome 和 Edge 会因为语法无效而拒绝 Set-Cookie,而 FireFox 则不会

问题描述 投票:0回答:1

我正在使用 php 的

setcookie
设置标头,例如:

setcookie('xxx', 'xxx', 'samesite'=>'Strict', 'secure'=>1, 'httponly'=>1]);

在他们的开发者工具中,Chrome 和 Edge 都显示:

    xxx=xxx; secure; HttpOnly; SameSite=Strict

有一个橙色三角形,表示: “此 Set-Cookie 标头的语法无效。”当鼠标悬停在上面时。

FireFox 没有问题,它会在下一个请求中将其发送回来。

为什么会这样?

google-chrome cookies setcookie
1个回答
0
投票

来自维基百科

但是,某些浏览器(包括 Chrome 52 及更高版本和 Firefox 52 及更高版本)放弃此规范,以支持更好的安全性,并禁止不安全站点 (HTTP) 使用

Secure
指令设置 cookie。

也许您运行的是旧版本的 FireFox? Edge 和 Chrome 警告您,根据他们更严格的规则,

secure
HttpOnly
之间存在矛盾。

© www.soinside.com 2019 - 2024. All rights reserved.