在 Firefox 中,我如何在 Chrome 中做相当于 --disable-web-security的事情。这已经被贴了很多,但从来没有一个真正的答案。大多数是附加组件的链接(其中一些在最新的 Firefox 中无法工作,或者根本不能工作)和“你只需要在服务器上启用支持”。
--disable-web-security
同样,这只是为了在触发之前进行测试,然后,将在一个允许的域上。
您引用的 Chrome 设置是禁用相同的原始策略。
这条帖子也提到了这一点: 禁用 Firefox 同源策略
About: config-> security.fileuri.stern _ source _ policy-> false
几乎在任何地方,人们都会引用 about: config 和 security.fileuri.strong _ source _ policy,有时还会引用 network.http.Refere.XOriginPolicy。
对我来说,这些似乎都没有任何效果。
这条注释 暗示 Firefox 中没有内置的方法来做到这一点(从2/8/14开始)。
从 这个的答案我已经知道了 CORS Everywhere Firefox 扩展,它适合我。它创建 MITM 代理拦截头以禁用 CORS。 您可以在 Addons.mozilla.org或 给你找到分机。
从 2016年9月: https://github.com/fredericlb/Force-CORS/releases开始禁用 CORS 的最佳 Firefox 插件
你甚至可以通过引用者(网站)来配置它。
看看我的插件,它可以和最新的火狐版本一起工作,有漂亮的用户界面和支持 JS regex: < a href = “ https://addons.mozilla.org/en-US/Firefox/addon/cross-domain-cors”rel = “ norefrer”> https://addons.mozilla.org/en-us/Firefox/addon/cross-domain-cors 更新: 我刚刚为这个插件添加了一个 Chrome 扩展 https://Chrome.google.com/webstore/detail/cross-domain-cors/mjhpgnbimicffchbodmgfnemoghjakai
当问题提到 Chrome 和 Firefox 时,还有其他没有跨域安全的软件。对于那些忽视这类软件存在的人,我会提到它。
例如,PhantomJS 是一个用于浏览器自动化的引擎,它支持跨域安全停用。
phantomjs.exe --web-security=no script.js
请看我的另一个评论: 用户脚本绕过访问嵌套 iframe 的同源策略
对于在使用 Nightwatch.js (1.3.4)时发现这个问题的人,配置文件中有一个 acceptInsecureCerts: true设置:
acceptInsecureCerts: true
firefox: { desiredCapabilities: { browserName: 'firefox', alwaysMatch: { // Enable this if you encounter unexpected SSL certificate errors in Firefox acceptInsecureCerts: true, 'moz:firefoxOptions': { args: [ // '-headless', // '-verbose' ], } } } },
我还没有找到一个 Firefox 的选项,相当于禁用网络安全或一个插件,为我这样做。我真的需要它的一些测试场景,修改网络服务器是不可能的。 真正有帮助的是使用 Fiddler 自动修改 Web 响应,以便它们拥有正确的标题,CORS 不再是一个问题。
步骤如下:
打开小提琴。
如果在 Https 上进入菜单工具-> 选项-> Https 并勾选捕获和解密 Https 选项
转到菜单规则-> 自定义规则。修改 OnBeforeResponse 函数,使其看起来像下面这样,然后保存:
static function OnBeforeResponse(oSession: Session) { //.... oSession.oResponse.headers.Remove("Access-Control-Allow-Origin"); oSession.oResponse.headers.Add("Access-Control-Allow-Origin", "*"); //... }
这将使每个网络响应都有访问控制-允许-起源: * 头。
这仍然不会工作,因为 OPTION 预飞行将通过并导致请求阻塞之前,我们的上述规则得到机会修改标题。 为了解决这个问题,在小提琴手主窗口的右侧有一个 AutoResponder 选项卡。 增加新的规则和回应: 方法: 选项 https://yoursite.com/ 自动响应: 然后勾选“启用规则”和“无匹配请求通过”。
见下图参考:
截至2022年6月,MozillaFirefox 允许您 天生的更改 CORS 配置。不需要额外的插件。根据 Mozilla 文档,您可以通过更改键 content.cors.disable的值来更改 CORS 设置
content.cors.disable
要这样做,首先进入浏览器,在地址栏中键入 about:config,如
about:config
单击“接受风险”并继续,因为您在堆栈溢出页面上,我们假设您已经意识到正在承担的风险。
您将看到一个带有用户变量的页面
您不必键入 true或 false值,只需在屏幕最右边按一下切换按钮,它就会改变值。
true
false