Chrome 在 chrome://extensions/ 中测试时扩展不起作用
Chrome extension don't work when tested in chrome://extensions/
我想学习一些关于 google 扩展的知识,所以我尝试做一个简单的扩展,使用 ajax
向 api
发出请求,然后return 一些结果。
当我直接在浏览器(本地主机)中测试时,它工作得很好,但是当我尝试测试将它添加到 chrome://extensions/
并单击 加载解压的扩展时… 在开发者模式下,它不起作用。
这是我的 app.js
与 ajax
通话:
document.addEventListener('DOMContentLoaded', function() {
$( '#form-custom' ).on( 'submit', function( event ) {
event.preventDefault();
user = $('#user').val();
$.ajax({
url:'https://sitewiththeapi.net/api/searchuser/'+user+'/show/list.json',
dataType:'jsonp'
})
.done(function(data){
console.log(data);
})
.fail( function(jqXHR, textStatus, errorThrown){
console.error(jqXHR, textStatus, errorThrown);
})
}
}, false);
还有我的 manifest.json
文件:
{
"manifest_version": 2,
"name": "MyExtension",
"description": "This extension will for learning",
"version": "1.0",
"browser_action": {
"default_icon": "icon.png",
"default_popup": "index.html"
},
"content_scripts": [
{
"matches": [
"<all_urls>"
],
"js": ["jquery.min.js", "app.js"]
}
],
"permissions": [
"activeTab",
"http://*/",
"https://*/"
]
}
编辑: 添加 https
到 manifest.json
文件,错误仍然存在。
检查弹出窗口时出现以下错误:
jquery.min.js:4 Refused to load the script
'https://sitewiththeapi.net/api/searchuser/theuser/show/list.json'
because it violates the following Content Security Policy directive:
"script-src 'self' blob: filesystem: chrome-extension-resource:".
尝试添加:
"converted_from_user_script": true,
在您的 manifest.json.
版本之后
这与其说是一个合法的解决方案,不如说是一种黑客攻击,但如果您正在为自己开发该扩展程序或只是为了学习,这很好。
我想学习一些关于 google 扩展的知识,所以我尝试做一个简单的扩展,使用 ajax
向 api
发出请求,然后return 一些结果。
当我直接在浏览器(本地主机)中测试时,它工作得很好,但是当我尝试测试将它添加到 chrome://extensions/
并单击 加载解压的扩展时… 在开发者模式下,它不起作用。
这是我的 app.js
与 ajax
通话:
document.addEventListener('DOMContentLoaded', function() {
$( '#form-custom' ).on( 'submit', function( event ) {
event.preventDefault();
user = $('#user').val();
$.ajax({
url:'https://sitewiththeapi.net/api/searchuser/'+user+'/show/list.json',
dataType:'jsonp'
})
.done(function(data){
console.log(data);
})
.fail( function(jqXHR, textStatus, errorThrown){
console.error(jqXHR, textStatus, errorThrown);
})
}
}, false);
还有我的 manifest.json
文件:
{
"manifest_version": 2,
"name": "MyExtension",
"description": "This extension will for learning",
"version": "1.0",
"browser_action": {
"default_icon": "icon.png",
"default_popup": "index.html"
},
"content_scripts": [
{
"matches": [
"<all_urls>"
],
"js": ["jquery.min.js", "app.js"]
}
],
"permissions": [
"activeTab",
"http://*/",
"https://*/"
]
}
编辑: 添加 https
到 manifest.json
文件,错误仍然存在。
检查弹出窗口时出现以下错误:
jquery.min.js:4 Refused to load the script 'https://sitewiththeapi.net/api/searchuser/theuser/show/list.json' because it violates the following Content Security Policy directive: "script-src 'self' blob: filesystem: chrome-extension-resource:".
尝试添加:
"converted_from_user_script": true,
在您的 manifest.json.
版本之后这与其说是一个合法的解决方案,不如说是一种黑客攻击,但如果您正在为自己开发该扩展程序或只是为了学习,这很好。