700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > chrome浏览器91版本 Chrome中跨域请求无法携带Cookie的解决方案

chrome浏览器91版本 Chrome中跨域请求无法携带Cookie的解决方案

时间:2018-10-25 10:45:39

相关推荐

chrome浏览器91版本 Chrome中跨域请求无法携带Cookie的解决方案

前些时候,发觉自己的vue项目node环境上跑不起来。请求后台的接口直接来了个400报错。如下:

这一看,不太妙,服务器直接来一个“您提交的数据无法被验证” 。好家伙,发现就是携带的cookiedi丢失了。请求接口Set-Cookie后头有一个黄色的感叹号,鼠标放上去有一个浮窗弹出,大致意思就是说,有一个另一个域的请求被组织了,可以通过将“SameSite=Lax”修改成为“SameSite=None”。意思很明确了,就是人家google的浏览器chrome不让跨域乱搞了,哦豁,这就玻璃心了。我y的就在自己的项目捣鼓,你管我跨域干嘛呢?我又不上天。特别是新版本的chrome这个安全性是真的重重设置的,没办法,谁让他们的浏览器好用呢,我只好自己去寻找解决方式。

如果这个时候按照chrome旧版本的修改方式,放眼91版本之前的版本来说,还是可能行得通,毕竟人家老版本的还能够在chrome://flags/访问页面中,找到samesite 将same-site-by-default-cookies,和SameSite by default cookies。居然能够找到,而且后边还有操作的选择,那就直接改就完事了的。

Chrome中访问地址chrome://flags/ 搜索samesite 将same-site-by-default-cookies,和SameSite by default cookies这两项设置为Disabled后重启浏览器再运行项目即可解决。该设置默认情况下会将未指定SameSite属性的请求看做SameSite=Lax来处理。

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

开启Chromium版Edge浏览器命令:

open -a “Microsoft Edge” --args --disable-features=SameSiteByDefaultCookies

/updates/same-site 里边有SameSite Updates,里边有一句话“Latest update:

Mar 18, : The flags #same-site-by-default-cookies and #cookies-without-same-site-must-be-secure have been removed from chrome://flags as of Chrome 91, as the behavior is now enabled by default. In Chrome 94, the command-line flag --disable-features=SameSiteByDefaultCookies,CookiesWithoutSameSiteMustBeSecure will be removed.”

这就不太妙了,到94版本的时候,上述的两个属性直接要被剔除掉。

所以那个时候,可以用回旧版本的chrome,也可以让后台不要用cookie传参了,可以用token的就不要用cookie。或者直接在开发环境作业, 同样也使用https也许是最简单的一种办法。当然了,不用chrome也是一个解决方式。

参考文件:

/post/6967695146322247716

/weixin_46146313/article/details/117707199

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。