在 Mac 上临时禁用 CORS(仅限调试),解决CORS报错:
方法 1:使用 Chrome 命令行(推荐)
-
关闭所有 Chrome 窗口:
确保浏览器完全退出(右键 Dock 图标 → 退出)。 -
打开终端:
通过 Spotlight(Cmd + Space
)搜索并打开 终端。 -
输入以下命令:
open -n -a "Google Chrome" --args --disable-web-security --user-data-dir=/tmp/chrome-cors-test
-n
:强制启动新实例(即使 Chrome 已运行)。--disable-web-security
:禁用同源策略。--user-data-dir
:指定临时用户目录,避免影响正常配置。
-
验证:
- 新打开的 Chrome 会显示警告:
您使用的是不受支持的命令行标记: --disable-web-security
,表示已生效。 - 访问页面并测试跨域请求是否成功(如图所示表示成功)。
- 新打开的 Chrome 会显示警告:
方法 2:使用 Safari 开发者模式
-
启用开发者菜单:
- 打开 Safari →
偏好设置 → 高级
→ 勾选 在菜单栏中显示“开发”菜单。
- 打开 Safari →
-
禁用跨域限制:
- 点击顶部菜单栏的 开发 → 停用跨域限制。
- 刷新页面并测试请求。
注意事项
-
仅限本地调试:
禁用安全策略会暴露隐私风险,切勿用于生产环境或访问敏感网站! -
Chrome 数据隔离:
- 使用
--user-data-dir=/tmp/chrome-cors-test
后,书签、扩展等配置将独立于正常 Chrome 实例。 - 调试结束后,删除临时目录即可恢复:
rm -rf /tmp/chrome-cors-test
- 使用
-
其他浏览器:
- Firefox:需安装插件(如 CORS Everywhere)。
- Edge:方法与 Chrome 相同(基于 Chromium 内核)。
恢复默认设置
- 关闭通过命令行启动的 Chrome 窗口即可恢复安全策略。