如何修复Chrome中的“由于用户偏好,此Set-Cookie被阻止”?(Stackoverflow SSO Login / Ajax CORS request)
似乎最近将Chrome更新到版本83.0.4103.116对Cookie处理进行了更改。
我正在为我的用户提供单点登录,将他们登录到多个网站。与Stackoverflow类似,我正在使用Jquery执行AJAX请求:
crossDomain: true,
xhrFields: { withCredentials: true },
在 PHP 中,我允许以下域:
// needed for cross-domain request
header('Access-Control-Allow-Origin: https://www.example.com');
header('Access-Control-Allow-Credentials: true');
但是,现在它不再起作用了。
在开发控制台中,我发现了一个带有工具提示的新警告:
“由于用户偏好,此设置 Cookie 已被阻止”
如何解决这个问题?
更新:
我只是看到Stackoverflow的单点登录也不再工作了!
PS:一个相关的问题建议告诉您的用户更改Chrome设置,从我的POV来看,我想避免这种情况。想象一下,SO通知数百万用户使Cookie能够进行单点登录...