chrome浏览器无法携带cookie的跨域问题解决

由于项目需要,不能在后台配置解决跨域,所以只能在浏览器上下手,着实折磨了我好一阵子。

1. 问题描述

平台跳转其他平台页面,并自动登录

浏览器: chrome

2. 解决方法

    2.1 经查阅资料, chrome浏览器有跨域拦截,即sameSite。不同域下无法携带cookie。解决方法为在谷歌浏览器地址栏中输入chrome://flags/,将关于sameSite的属性设置为disabled,重启浏览器即可。这是针对80版本以上的chrome浏览器。

chrome浏览器无法携带cookie的跨域问题解决

 

chrome浏览器无法携带cookie的跨域问题解决

 

     2.2  后来有一天,自动登录突然又不好用了。崩溃……打开chrome://flags/,发现几个关于sameSite的属性SameSite by default cookies, Cookies without SameSite must be secure根本找不到了,再度崩溃……

chrome浏览器无法携带cookie的跨域问题解决

然后赶紧查看浏览器版本,发现升级到91版本。于是,重新找解决方案。终于又找到了方法。

在chrome的快捷方式右键——属性——快捷方式——目标里的路径后面加启动参数

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

重启浏览器即可。但是这个方法在没几天后,再次失效。。。

   2.3  于是挖地三尺又找到一个方法,依然是加启动参数

--args --disable-web-security --user-data-dir=D:\HaoroomsChromeUserData

但是我加上后并没有效果。。。于是我突发奇想把两个启动代码结合了一下

--flag-switches-begin --disable-features=SameSiteByDefaultCookies,CookiesWithoutSameSiteMustBeSecure --user-data-dir=D:\HaoroomsChromeUserData --flag-switches-end

终于成功!

chrome浏览器无法携带cookie的跨域问题解决

 

注意目标中的原路径和新加入的启动参数之间要加一个空格。否则会报错。并在此操作前先备份自己的浏览器书签和常用密码。

参考文章:

新版chrome浏览器设置允许跨域 (haorooms.com)

https://gadzan.com/chrome-edge-91hou

上一篇:Google/QQ/Edge 浏览器被劫持怎么办?


下一篇:Understadning Cisco Access-Lists on Switches: PACL, VACL, RACL and MACL