我正在试图解决我从Chrome浏览器得到的警告:
A cookie associated with a cross-site resource at http://www.facebook.com/ was set without the `SameSite` attribute. A future release of Chrome will only deliver cookies with cross-site requests if they are set with `SameSite=None` and `Secure`. You can review cookies in developer tools under Application>Storage>Cookies and see more details at https://www.chromestatus.com/feature/5088147346030592 and https://www.chromestatus.com/feature/5633521622188032. <br/>我正在使用。在试图消除警告时,我创建了一个非常简单的页面,没有cookie。单个cookie不是由我的脚本创建的,而是来自Facebook的。看起来后端代码并没有真正影响cookie。它被设置在响应头中。
在PHP代码中,我介绍了以下代码:
$fbcook = $_COOKIE[$facebookcookiename];
setrawcookie($facebookcookiename, $fbcook, ['samesite' => 'None', 'secure' => true]);当我调试我在报头中看到的网络时,它就会生效:
set-cookie: fbcookie=value; secure; SameSite=None原始值为base_domain=.blabla.bla
请求标头中的cookie属性:
cookie: fbcookie=value还有Chrome中的网络调试信息:

如果在facebook.com再次设置它,我会期待它,因为我在警告'at http://www.facebook.com/‘中看到,而不是关于我的站点blabla.bla。有什么办法可以摆脱警告吗?另一个问题:当Chrome改变策略时,功能会受到影响吗?我想这样做,而不改变浏览器的设置。该站点的用户不太可能进行任何更改,以消除浏览器中的任何安全修复。
发布于 2020-02-21 11:12:57
不,这不是你能做的事。这不是你的cookie,它是由Facebook设置的,对他们的域名有效。
Facebook必须解决这个问题,你也许可以放心,他们会及时这么做,否则它很可能会破坏许多网站的登录功能。
https://stackoverflow.com/questions/60337016
复制相似问题