如何在Chrome Extension第三方库中处理相关协议URL

时间:2017-10-03 12:38:57

标签: javascript google-chrome google-chrome-extension xmlhttprequest relative-url

我正在开发依赖第三方JavaScript库的Chrome扩展程序。在库的代码中,其资源和API端点的所有URL都使用相对协议,如:

//blah.com/api/get-the-stuff/

问题在于,当在扩展程序内进行调用时,我认为URL变为:

chrome-extension://blah.com/api/get-the-stuff/

显然这不起作用。一种解决方案是将第三方库更改为完整URL,例如:

https://blah.com/api/get-the-stuff/

这样可行,但实际上维护此lib的修改版本并不可行。 有办法处理这个吗?

我认为chrome.webRequest API看起来很有希望在请求发送之前重写URL,但这些相对协议URL似乎在它们触发此API上的侦听器之前失败。请求显示在开发人员控制台的网络选项卡中:

chrome-extension://invalid/

这是Chrome正在对我做的改写 创建请求之前的chrome-extension://blah.com/api/get-the-stuff/个网址?我是否需要以某种方式改变我的清单以允许这些"坏"要求解雇的URL请求我可以重写它们吗?

或者我可能完全咆哮错误的树?

0 个答案:

没有答案