gpt4 book ai didi

angularjs - 使用 Angular JS ng-csp 指令构建特权 Firefox OS 应用程序

转载 作者:行者123 更新时间:2023-12-01 01:09:11 26 4
gpt4 key购买 nike

我是负责构建打包的 Firefox OS 应用程序的团队成员。
由于 Firefox OS 特权应用程序的受限 CSP 策略,我在应用程序主体中添加了 ng-csp 指令:

<body ng-app="the-app" ng-csp>

Firefox OS 特权应用程序的 CSP 规范是: default-src *; script-src 'self'; object-src 'none'; style-src 'self' 'unsafe-inline'
根据我可以从 Firefox OS 设备获取的日志,Angular 似乎正在调用 eval() 或 Function() 构造函数,并且两者都在 Firefox OS 特权应用程序中被阻止,该应用程序只是停止渲染。

我想知道这是预期行为、已知问题还是我错误地应用了指令?

有类似问题的人吗?

提前致谢。

Angular 版本:v1.0.1

错误日志:
05-07 19:31:10.048: ERROR/GeckoConsole(1397): [JavaScript Error: "CSP ERROR: Couldn't parse invalid source 'unsafe-inline'"] 
05-07 19:31:10.048: ERROR/GeckoConsole(1397): [JavaScript Warning: "CSP WARN: Failed to parse unrecognized source 'unsafe-inline'"]

<-- 丢弃的 CSS 标签 -->
05-07 19:31:13.892: ERROR/GeckoConsole(1397): [JavaScript Error: "Error: call to Function() blocked by CSP" {file: "app://788ceebd-a9b7-4a98-a8b0-1ff248e40f52/scripts/vendor/d10639ae.angular.js" line: 6337}] 
05-07 19:31:13.912: ERROR/GeckoConsole(1397): [JavaScript Warning: "CSP WARN: Directive eval script base restriction violated" {file: "app://788ceebd-a9b7-4a98-a8b0-1ff248e40f52/scripts/vendor/d10639ae.angular.js" line: 6337 column: 0 source: "call to eval() or related function blocked by CSP"}]

最佳答案

我设法找出了这个问题的原因。显然,如果我尝试在应用程序的 $rootscope 中创建观察者,即使在 CSP 安全模式 (ng-csp) 下,Angular 也会调用 Function 构造函数。我已经在 Angular Google Groups 中发了一个帖子,因为这似乎是一个错误。我对 Angular JS 库进行了修改,并使其在 Firefox OS 设备上运行。该帖子的链接如下:

link

干杯

关于angularjs - 使用 Angular JS ng-csp 指令构建特权 Firefox OS 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16466384/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com