有没有办法在谷歌的Chrome浏览器上禁用同源策略?
当前回答
我有时会使用这个方法,将本地主机前端站点发布到本地主机后端API(例如,React到旧的.NET API)。我在Windows 10桌面上创建了一个单独的快捷方式,这样它就不会用于正常浏览,只用于本地调试。我执行了以下操作:-
右键单击桌面,添加新快捷方式将目标添加为“[PATH_TO_CHROME]\CHROME.exe”--禁用web安全单击“确定”。
这个浏览器加载时,你会收到一个警告,说它不安全,只需注意你在它上的浏览器。我倾向于在桌面上重命名这个新的快捷方式,用大写字母表示,并将其从我的其他图标上移开,因此它不会与普通的Chrome混淆。
希望这有帮助!
其他回答
对于Windows:
(使用windows 8.1,chrome 44.0)
首先,关闭谷歌chrome。
然后,打开命令提示符并转到“chrome.exe”所在的文件夹。
( for me: 'chrome.exe' is here "C:\Program Files (x86)\Google\Chrome\Application".
所以我键入:cd C:\Program Files(x86)\Google\Chrome\Application)
现在键入:chrome.exe--禁用web安全
一个新的铬窗口将打开。
您可以简单地使用这个chrome扩展名Allow Control Allow Origin
只需单击扩展图标即可根据需要打开或关闭跨资源共享
似乎上述解决方案都不起作用。最近的chrome版本不再支持--disable web安全性。
允许控制允许来源:*-chrome扩展部分解决了问题。只有当您的请求使用GET方法并且没有自定义HTTP头时,它才能工作。否则,chrome将发送OPTIONS HTTP请求作为飞行前请求。如果服务器不支持CORS,它将使用404 HTTP状态代码进行响应。插件无法修改响应HTTP状态代码。所以chrome会拒绝这个请求。chrome插件无法根据当前的chrome扩展API修改响应HTTP状态代码。对于XHR发起的请求,也不能进行重定向。
不知道为什么Chrome会让开发者生活如此艰难。它阻止了禁用XSS安全检查的所有可能方式,即使是用于开发用途,这是完全不必要的。
经过几天的努力和研究,有一个解决方案对我来说非常有效:使用corsporoxy。这里有两个选项:1.使用[https://cors-anywhere.herokuapp.com/]2.在本地箱中安装corsporoxy:npm install-g corsporoxy
【2018年6月23日更新】最近我正在开发一款SPA应用程序,需要再次使用corsporoxy。但似乎github上的corsporoxy都不能满足我的要求。
出于安全原因,需要它在防火墙内运行。所以我不能使用https://cors-anywhere.herokuapp.com/. 它必须支持https,因为chrome不会阻止https页面中的https ajax请求。我需要在nodejs上运行。我不想维护另一个语言堆栈。
所以我决定用nodejs开发我自己版本的corsporoxy。其实很简单。我已经在github上发布了它作为一个要点。以下是源代码要点:https://gist.github.com/jianwu/8e76eaec95d9b1300c59596fbfc21b10
它是普通的nodejs代码,没有任何附加的依赖关系您可以在http和https模式下运行(通过传递https端口命令行中的数字),要运行https,需要生成cert和键并将它们放在webroot目录中。它还充当静态文件服务器它还支持飞行前OPTION请求。
要启动CORSProxy服务器(http端口8080):节点static_server.js 8080
要访问代理,请执行以下操作:http://host:8080/http://www.somesite.com
对于使用**Chrome版本60.0.3112.78(解决方案测试和工作的当天)的windows用户,至少到今天为止是2022年11月24日(版本106.05.249.119(官方版本)(64位))。您不需要关闭任何chrome实例。
在桌面上创建快捷方式右键单击快捷方式,然后单击“财产”编辑Target属性将其设置为“C:\Program Files(x86)\Google\Chrome\Application\Chrome.exe”--禁用web安全--用户数据dir=“C:\ChromeDevSession”启动chrome并忽略消息:禁用网络安全不受支持!
注意不要使用这个特定的浏览器实例进行浏览,因为你可能会被黑客入侵!
这是一个不断移动的目标。。。。今天我需要添加另一个标志以使其生效:--禁用站点隔离试验
操作系统X:open/Applications/Google\Chrome.app--args--用户数据dir=“/var/tmp/Chrome_dev_2”--禁用web安全--禁用站点隔离测试
推荐文章
- 检测用户何时离开网页的最佳方法?
- 当“模糊”事件发生时,我如何才能找到哪个元素的焦点去了*到*?
- React不会加载本地图像
- 如何将Blob转换为JavaScript文件
- 在另一个js文件中调用JavaScript函数
- 如何在svg元素中使用z索引?
- 如何求一个数的长度?
- 跨源请求头(CORS)与PHP头
- 如何用Express/Node以编程方式发送404响应?
- parseInt(null, 24) === 23…等等,什么?
- JavaScript变量声明在循环外还是循环内?
- 元素在“for(…in…)”循环中排序
- 在哪里放置JavaScript在HTML文件?
- 什么时候.then(success, fail)被认为是承诺的反模式?
- 从浏览器下载JSON对象作为文件