我正在制作Chrome扩展程序,我想使用第三方API,但我遇到了一些问题而且我一直坚持这个问题......
问题:
即使chrome Dev工具说API已成功加载,我也无法使用API中的函数。
我尝试在不同的时间加载API,看看是否会产生影响,但似乎并没有。
我在基本网页中成功使用了API。但我似乎无法在扩展程序的内容脚本中使用它。
以下是加载API的代码:
(function() {
var scr = document.createElement('script');
scr.type = 'text/javascript';
scr.src = 'someurl';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(scr, s);
})();
清单:
"content_security_policy": "script-src 'self' someurl; object-src 'self'"
我还完成了Google提供的有关如何在扩展程序中使用Google Analytics的教程,因为我认为它是相关的。但没有运气。任何指导都将不胜感激。
答案 0 :(得分:1)
当您附加脚本标记时,您正在将API注入到网页的上下文中;你的内容脚本remains isolated。
为了避免这种情况,一种可能的解决方案是附加一些代码,然后与您的扩展程序进行对话,through DOM或external messages