75

出于开发目的,我需要在我的机器上禁用 Safari(在 Windows 上)中的同源策略。

在 Chrome 中,这可以通过使用 flag 启动来完成--disable-web-security。Safari 中是否有等效的标志或隐藏设置?

4

6 回答 6

90

如果你想在 Safari 上禁用同源策略(我有 9.1.1),那么你只需要启用开发者菜单,然后从开发菜单中选择“禁用跨域限制”。

于 2016-07-06T15:45:05.300 回答
40

更高版本的Safari允许您禁用跨域限制。只需从 Preferences >> Advanced 启用开发者菜单,然后从开发菜单中选择“ Disable Cross-Origin Restrictions ”。

如果只需要本地,则只需要启用开发者菜单,然后从开发菜单中选择“禁用本地文件限制”。

于 2012-08-28T11:23:11.303 回答
6

去,

Safari -> 首选项 -> 高级

然后在底部勾选在菜单栏中显示开发菜单

然后在开发菜单中勾选禁用跨域限制

于 2018-04-06T19:14:39.650 回答
5

不幸的是,Safari 没有等价物,并且该参数--disable-web-security不适用于 Safari。

如果您有权访问服务器端应用程序,则可以修改 https 响应标头以允许访问。主要是表Access-Control-Allow-Origin头。修改它将允许 Safari 访问该资源。请参阅https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS#Access-Control-Allow-Origin了解有关响应标头的更多信息,这将有所帮助。

于 2014-09-18T21:19:58.577 回答
2

Safari 9 中有一个选项可以禁用跨域限制,这与上面提到的本地文件限制不同。

于 2016-03-13T04:56:32.957 回答
0

这些答案中的大多数都是旧的。最新的 Safari 14.0.2(2021 年)可以选择Disable Cross-Origin Restrictions,但是,如果路径具有 ../../ 类型的路径名,则它不起作用;即使 Safari 正确解析为本地文件路径,它仍然不允许加载该文件,即使它存在。这是 Safari 14 中最近的一个错误,在 13 中没有发生。

于 2021-01-20T03:02:03.480 回答