Firefox扩展请求被解释为CORS

问题描述 投票:1回答:1

将Chrome扩展程序移植到Firefox Web扩展程序时,我无法发出任何网络请求,因为它们被相同的原始策略阻止。

举个例子:

const headers = {"content-type": "application/json" };
window.fetch(myDomain + "/api/v3/token", { method: "GET", headers: headers });

此操作失败,并显示以下错误:

enter image description here

有没有办法配置Firefox扩展不考虑这些请求CORS?相同的代码适用于Google Chrome扩展程序。

即使请求转到localhost也是如此。

我已经尝试使用jquery的$.ajax方法和axios库来获得相同的结果(在Chrome中有效,在Firefox中不起作用)所以我不认为问题仅限于window.fetch API。

编辑:我知道我可以在服务器端添加一个CORS处理程序,但我不想这样做。为什么这适用于Chrome而非Firefox?

编辑2:扩展名是一个弹出窗口

javascript google-chrome-extension same-origin-policy firefox-webextensions
1个回答
1
投票

这里记录了:https://developer.mozilla.org/en-US/Add-ons/WebExtensions/manifest.json/permissions#Host_permissions

简而言之,默认情况下,您需要为localhost添加主机权限以限制同源请求。我不知道为什么Google Chrome会以不同的方式处理此问题。

© www.soinside.com 2019 - 2024. All rights reserved.