如何修复“将SameSite Cookie设置为无”警告?Chrome扩展程序

达尼洛·伊万诺维奇(Danilo Ivanovic):

我创建了一个chrome扩展程序,并从popup.js中调用了PHP脚本(使用Xhttprequest)来读取cookie。像这样:

$cookie_name = "mycookie";

if(isset($_COOKIE[$cookie_name]))
{
    echo $_COOKIE[$cookie_name];
}
else{
    echo "nocookie";
}

但是我收到扩展错误的警告。

与(此处是我的域)的跨站点资源关联的cookie设置为未设置SameSite属性。如果将来的Chrome浏览器版本将Cookie设置为SameSite=None,则只会提供带有跨站点请求的Cookie Secure您可以在“应用程序”>“存储”>“ Cookies”下的开发人员工具中查看Cookie,并在https://www.chromestatus.com/feature/5088147346030592https://www.chromestatus.com/feature/5633521622188032上查看更多详细信息

我试图创建这样的cookie,但没有帮助。

setcookie($cookie_name,$cookie_value, time() + 3600*24, "/;samesite=None ","mydomain.com", 1);

遵循问题的指示

Dimas Pante:

我也为此感到“反复无常”,但是Google Chrome Labs的Github的这个回答对我有所帮助。我将其定义到我的主文件中,并且仅在一个第三方域中有效。仍在进行测试,但我渴望通过更好的解决方案来更新此答案:)

编辑:我现在正在使用PHP 7.4,并且此语法工作正常(2020年9月):

$cookie_options = array(
  'expires' => time() + 60*60*24*30,
  'path' => '/',
  'domain' => '.domain.com', // leading dot for compatibility or use subdomain
  'secure' => true, // or false
  'httponly' => false, // or false
  'samesite' => 'None' // None || Lax || Strict
);

setcookie('cors-cookie', 'my-site-cookie', $cookie_options);

-

如果您的PHP在7.2之前(如下罗伯特的回答):

setcookie('key', 'value', time()+(7*24*3600), "/; SameSite=None; Secure");

如果您的主机已经更新到7.3,则可以使用(感谢Mahn的评论):

setcookie('key', 'value', ['expires' => time()+(7*24*3600, 'path' => '/', 'domain' => 'domain.com', 'samesite' => 'None', 'secure' => true, 'httponly' => true ]);

您可以尝试检查Cookie的另一件事是启用下面的标志,用自己的话说,“将为可能受此更改影响的每个cookie添加控制台警告消息”:

chrome://flags/#cookie-deprecation-messages

在以下位置查看完整代码:https : //github.com/GoogleChromeLabs/samesite-examples/blob/master/php.md,他们也有相应的代码same-site-cookies

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

将Chrome扩展程序Cookie值名称设置为var

如何解决我的Django 2.0应用程序上的“ Cookie csrftoken将很快被拒绝,因为它的sameSite属性设置为none”警告?

Rails会话,如何将SameSite设置为Lax

如何将SameSite和Secure属性设置为JSESSIONID cookie

如何将SameSite Cookie属性设置为显式ASP ASP.NET Core

Chrome扩展程序不发送SameSite = Lax Cookie

在 chrome 扩展中出错:与 http://*******.com/ 上的跨站点资源关联的 cookie 设置为没有“SameSite”属性

Chrome扩展程序:如何将功能设置为在一天更改后执行

如何在Laravel 5.8中为YouTube设置SameSite Cookie

如何设置SameSite属性?

将Chrome扩展程序设置为`run_at``document_start`运行速度太快?

提交后,Chrome扩展程序HTML将焦点设置为输入字段

Chrome扩展程序:“错误处理响应:TypeError:无法将属性'value'设置为null”

无法将Chrome扩展程序content.js设置为仅在单击图标时才能工作?

查找导致Chrome的SameSite警告的Cookie

如何在Chrome扩展程序中为警报设置特定的歌曲?

Chrome 80中的SameSite Cookie扩展更改将如何影响Identity Server 4用户?

修复不起作用:设置了与跨站点资源关联的cookie,但未设置“ SameSite”属性

即使在设置sameSite:'none'和secure:对于MERN Stack Web应用程序为true后,Cookie也不会保存在chrome中

如何在 JSESSIONID Cookie 中设置 SameSite=None

AspNet核心身份,如何设置options.Cookie.SameSite?

如何在weblogic.xml中设置cookie samesite属性?

如何解决SameSite属性警告?

如何将SameSite属性自动添加到我的Asp.net_SessionID cookie中?

如何在Apache 2.4和PHP 7.1的Chrome中解决跨站点Google Analytics(分析)Cookie“ SameSite = None”警告?

Chrome控制台SameSite Cookie属性警告

如何将 LinearLayout 修复为列表视图项

如何设置通知扩展程序Chrome的关闭时间

SameSite警告Chrome 77