用flutter 开发一个web应用,连接服务器,显示跨域。找了网上很多方法,总算把解决跨域了,发现后台验证带cookie验证,跨域情况下不能读取cookie。 网上有些方法,总想找个简单的,然后找到了一个可实现的方法。简单描述下:
第一步:删掉D:\flutter\bin\cache(我的flutter包路径)中的flutter_tools.snapshot和flutter_tools.stamp,然后删掉他们。
第二步:打开D:\flutter\packages\flutter_tools\lib\src\web\chrome.dart文件
找到'--disable-translate',
在后面加上 '--disable-web-security',
'--user-data-dir=${dirurl}',
至于那个dirurl, 是我指定了实际的chrome浏览器的user data 文件夹
以上弄了,运行flutter web程序调试,就能解决跨域问题。 然而跨域情况下,cookie读不到,继续解决。
第三步:先把浏览器降级,然后地址栏输入
chrome://flags
搜索samesite ,设置如下
https://segmentfault.com/a/1190000040626348 (原链接,里面可以下旧版浏览器)
然后就是谷歌浏览器会自动更新,安装完后不要打开,先按这个教程把自动更新程序禁用掉,如果不小心升级了,就卸载最新版本,降级安装。禁用前不要点浏览器里的关于,会自动去更新的,最好就是安装了直接不要打开。
谷歌浏览器取消自动升级_woshiweiweily的博客-CSDN博客_谷歌浏览器关闭自动更新
弄完以上,就能跨域带cookie调试了。亲测有效。