我正在尝试将简单的Dart Polymer应用程序作为Chrome应用程序运行。
我的示例基于https://github.com/dart-lang/polymer-dart-patterns的代码。我提取了一个样本,将其放在我的web
目录中,并从样本的pubspec.yaml中复制了依赖项和变换器配置。我将csp:true
标志添加到$dart2js
转换器。然后,我添加了一个裸骨清单和background.js,以便将该应用程序作为Chrome应用程序运行。
name: x_app_polymer_dart
environment:
sdk: '>=1.18.0 <2.0.0'
dependencies:
browser: ^0.10.0
polymer: ^1.0.0-rc.18
polymer_elements: ^1.0.0-rc.9
web_components: ^0.12.0
transformers:
- polymer:
entry_points:
- web/index.html
- $dart2js:
$include: '**/*.bootstrap.initialize.dart'
csp: true
请注意,我使用的是最新的Polymer 1.0.0候选版本。
我的应用在pub serve
投放并在Chrome浏览器中加载时运行良好。
代码会加载Chrome应用程序,但会生成一系列CSP违规错误消息。 csp: true
标志似乎对Dart编译没有影响。
我注意到其他相关问题/答案,例如Chrome App CSP violation after Dart/Polymer transform/compile to JavaScript,在Polymer转换器上设置了csp: true
标志,但1.0.0版本不支持它。
在这种情况下,有关如何强制CSP安全编译我的Dart代码的任何建议吗?