Chrome设置跨域访问方式--disable-web-security不生效原因,以及出现--disable-web-security,但是实际上浏览器不能跨域访问Specify SameSite

Chrome设置跨域访问方式--disable-web-security不生效原因,以及出现--disable-web-security,但是实际上浏览器不能跨域访问的原因:

1、设置跨域,在chrome快捷方式右键‘属性’,‘快捷方式’,‘目标’ 路径最后边按一下空格,再添加以下代码:

--args --disable-web-security --user-data-dir=D:\MyChromeDevUserData或者

--disable-web-security --user-data-dir=D:\MyChromeDevUserData

‘D:\MyChromeDevUserData’是我自己随便找了个文件夹,可以自己随便配置,不这么写的话,新版本浏览器可能出现设置不生效的问题。

这个方式等于是用户在自己电脑创建了一套chrome的私有化浏览器,里边的设置配置等均为私有化设置。此时找到chrome安装源目录,打开chrome.exe,会发现,在私有chrome配置的所有书签,选项等,在这个chrome里都没有。

备注:如果要删掉D:\MyChromeDevUserData,一定要先做书签、账号密码等的备份。一经删除,等于是把个人电脑里的私有chrome卸载了,数据都不会保留

2、设置成功以后再打开浏览器,会有提示:

“您使用的是不受支持的命令行标记: --disable-web-security,稳定性和安全性会有所下降”

此时,正常用户都可以进行跨域访问了,比方本地的前端项目,直连测试或者线上环境的接口(前提是目标环境在当前浏览器登陆过,已经存在当前账号的cookies,session等信息)

3、but,有的用户还是不能访问,此时在console控制台里会看到一段背景是黄颜色的字:

'...Specify SameSite=None and Secure if the cookie should be sent in cross-site...'

这是什么意思呢,找百度翻译结果:如果cookie应跨站点发送,请指定SameSite=None和Secure

此时浏览器还是限制了cookies的跨域访问,所以部分人的电脑还是不能使用跨域,解决方案:

  • 地址栏输入:chrome://flags
  • 再搜索:SameSite by default cookies,找到‘SameSite by default cookies’以及‘Cookies without SameSite must be secure’,在后边有个下拉框,这俩选项均选择:‘disabled’,浏览器会提示红字:‘警告:您所要使用的是实验性功能!’
  • 忽略警告,此时浏览器是我们本地创建的D:\MyChromeDevUserData,点击右下角的Relaunch按钮,浏览器会自动重启,并且保留所有当前已开页面。
  • 联调时使用这个模式,如果访问其它购物等网站,建议还是使用chrome.exe安装源目录的chrome.exe,避免出现不必要的麻烦

 

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值