我一直在尝试将Google API的JavaScript客户端库与Chrome扩展程序结合使用,但是似乎这个Chrome扩展程序有一个十分令人沮丧的问题。该脚本的链接为:
https://apis.google.com/js/client.js
下载文件很麻烦,因为这个脚本实际上会加载其他脚本。我已经尝试将其包含在清单中:
manifest.json(摘录)
"background": {
"scripts": [
"background.js",
"https://apis.google.com/js/client.js?onload=callbackFunction"
]
},
但是这个扩展程序没有被加载。我也尝试将脚本注入到后台HTML中。
background.js(摘录) var body = document.getElementsByTagName('body')[0];
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = "https://apis.google.com/js/client.js?onload=callbackFunction";
body.appendChild(script);
但 Chrome 调试器给了我以下信息:
拒绝加载脚本'https://apis.google.com/js/client.js',因为它违反了以下内容安全策略指令:"script-src 'self' chrome-extension-resource:"。
有什么想法,或者它们注定无法在一起吗?
编辑:请注意,如果要使用回调函数,则必须将 "?onload=myCallbackFunction" 添加到脚本 URL 中。感谢 Ilya。更多信息请参见此处。
undefined undefined
。我认为可能是自从这个答案发布以来客户端脚本已经改变了。第一个答案(修改CSP)确实有效。 - Yossi Vainshtein