繁体   English   中英

Angular:拒绝将字符串评估为 JavaScript,因为“不安全评估”

[英]Angular: Refused to evaluate a string as JavaScript because 'unsafe-eval'

在我的应用程序中,通过 API 调用获取的 blob 被传递到自定义 npm 包,该包将在屏幕上显示 blob(它是图像)。 在本地它有效。 只是不在开发服务器上。

Refused to evaluate a string as JavaScript because 'unsafe-eval' is not an allowed source of script in the following Content Security Policy directive: "script-src 'self' 'unsafe-inline' https://www.example.com 'unsafe-inline' https://www.anotherexample.com".

已经制作了一个平面应用程序来获取 blob 并使用相同的自定义 npm 包。 问题似乎与 Angular 或我的设置有关。 本地的设置是一样的,不清楚是什么问题。

该错误并非源自 Angular,问题在于您的 Content-Security-Policy (CSP)。 您的 CSP 在index.html文件中定义为header部分中的meta标记,或者在您的服务器上设置为 header。

您可以简单地将“unsafe-eval”添加到 CSP,但这在安全性方面是非常危险的。 对我来说,您在这里使用的库似乎在某个地方使用了eval ,这很糟糕,应该避免。

使用开发服务器,您的意思是它实际上已部署,还是以ng serve开头的本地服务器?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM