所以我正在开发一个通过goo.gl缩短网址的Chrome扩展程序
这是我的实际代码,如果有帮助的话:
$("#ajaxfiller").text("");
//Get URL entered
var longUrl = $("#input2").val();
longUrl = '"' + longUrl + '"';
function googlurl(url, cb) {
jsonlib.fetch({
url: 'https://www.googleapis.com/urlshortener/v1/url',
header: 'Content-Type: application/json',
// Just a static URL for shortening:
data: JSON.stringify({
longUrl: "https://google.com"
})
}, function (m) {
var result = null;
try {
result = JSON.parse(m.content).id;
if (typeof result != 'string') result = null;
} catch (e) {
result = null;
}
cb(result);
});
}
googlurl(longUrl, function (s) {
alert(s);
$("#kinchyj").show();
$("#ajaxfiller").val(s);
});
注意:当我将扩展程序的popup.html
作为常规网页加载时,它会非常有用。
此错误似乎是Chrome安全措施。无论如何我可以在清单中列出白名单吗?
答案 0 :(得分:0)
您可以使用manifest.json
详细here修改content_security_policy
中的安全政策。你需要的是:
"content_security_policy": "script-src 'self' https://www.googleapis.com/urlshortener/v1/url; object-src 'self'"
如果没有看到HTML,我无法分辨,但您最好将所有JavaScript移动到本地,通过<script>
标记包含的外部文件。