在我的Dart金额网页中这个脚本:
<script src="https://test.net/test/test.js"></script>
但是当你启动应用程序时它会给我以下错误:
拒绝加载脚本'https://test.net/test/test.js',因为它违反了以下内容安全策略指令:“default-src'self'chrome-extension-resource:” . 请注意,'script-src'未明确设置,因此'default-src'用作后备 .
我还在清单中设置了内容安全策略,但没有任何结果:
"content_security_policy": "script-src 'self' https://test.net/test/"
有谁知道如何解决?
Edit
Dart中的这个答案Loading external javascript in google chrome extension不起作用 .
表现:
..."permissions":["tabs","https://test.net/test/"],
"content_security_policy": "script-src 'self' https://test.net/test/; object-src 'self'",
"content_scripts": [
{
"js": ["https://test.net/test/test.js"]
}
]...
码:
JsObject spark=context['spark'];
print(spark);
spark.callMethod('login',["{username: 'test@email.com', password: 'test'}"]);
结果:
null异常:null对象没有方法'callMethod' .
Dart不支持动态脚本注入:
是否会为dart注入动态代码?
那么如何更改内容安全策略?
Edit 2
安装应用时Chrome会报告此错误:
1 回答
在Chrome的打包应用中,您无法使用
"content_scripts"
,"content_security_policy"
和"tabs"
字段 .Dart也不支持动态脚本注入 . 如下所述:
要使用JS代码必须在本地保存,将其导入您的html代码:
并使用库dart:js与代码js交互,如: