小编Nic*_*kyi的帖子

Safari Web 扩展中后台服务工作者发出 HTTP 请求期间出现 CORS 问题

链接到 Xcode 项目的存储库来测试问题:测试 CORS 问题

\n

这个扩展使用 Manifest v3,我example.comhost_permissions

\n
"host_permissions": [\n        "*://example.com/*"\n    ]\n
Run Code Online (Sandbox Code Playgroud)\n

当我运行fetch("https://example.com")时,background.js我收到此错误:

\n
[Error] Fetch API cannot load https://example.com/ due to access control checks.\n[Error] Failed to load resource: Origin safari-web-extension://e0b5d7c7-c079-484b-8825-44d261383cb6 is not allowed by Access-Control-Allow-Origin. Status code: 200 (example.com, line 0)\n
Run Code Online (Sandbox Code Playgroud)\n

在 Safari 版本 16.0(17614.1.25.9.10、17614)和 Safari 技术预览版 153(Safari 16.0、WebKit 17615.1.4.1)中进行了测试

\n

在代码中,我使用chrome命名空间(在 Chrome 浏览器中测试它),但我遇到了与browser命名空间相同的问题。

\n

如果我在 Chrome 浏览器中运行此扩展程序而不进行任何更改,它会完美运行\n(chrome://extensions/ \xe2\x86\x92 Load Unpacked)

\n

有没有办法在不更改服务器访问控制设置的情况下避免 …

google-chrome-extension safari-extension chrome-extension-manifest-v3

10
推荐指数
1
解决办法
1292
查看次数