关于谷歌无法携带cookie的解决方案

编程入门 行业动态 更新时间:2024-10-09 18:20:13

1.Chrome80

Chrome升级到80版本之后cookieSameSite属性默认值由None变为Lax,这也就造成了一些访问跨域cookie无法携带的问题。比如本地调试时使用http://localhost:3000/,而cookie是种在测试环境路径下这就造成本地调试跨域访问不通了。可以考虑在本地开发环境下disableSameSite属性。在Chrome中访问chrome://flags/,搜索SameSite并设置为disabled即可。

2. Chrome 90

91版本的chrome已经把上述两个设置给隐藏了,那我们就不能在链接中优雅修改cookie的连接方式了。还好,windows上能够解决这个方式;mac上也是能够解决这个问题的。
Windows:打开Chrome快捷方式的属性,在 目标 后添加

--disable-features=SameSiteByDefaultCookies

或者

--flag-switches-begin --disable-features=SameSiteByDefaultCookies,CookiesWithoutSameSiteMustBeSecure --flag-switches-end

 Mac:Mac系统下可以通过命令行携带参数打开浏览器的方式来解决,前提须关闭所有浏览器窗口并退出浏览器后再进行操作。
开启Chrome命令:

open -a "Google Chrome" --args --disable-features=SameSiteByDefaultCookies

3.  94及以上版本的Chrome浏览器

Chromium项目官网提到在94版本通过命令行禁用设置SameSite默认值的方式会被移除,到时方案1和方案2的方式都将无法使用,后续可通过nginx等代理工具或软件将跨域请求转为非跨域请求来解决改问题。

 以上参考:掘金

更多推荐

关于谷歌无法携带cookie的解决方案

本文发布于:2023-06-13 09:21:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1372766.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:解决方案   cookie

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!