首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >拒绝加载脚本,因为它违反了以下内容安全策略指令:"style-src 'self‘'unsafe-inline’

拒绝加载脚本,因为它违反了以下内容安全策略指令:"style-src 'self‘'unsafe-inline’
EN

Stack Overflow用户
提问于 2016-01-18 18:40:39
回答 5查看 64K关注 0票数 22

当我的代码在发布模式下运行时,我正在使用使用angular的MVC6 (asp.net 5),并试图从CDN位置加载脚本,但由于某些原因,脚本从未加载。

我读到过,您需要向HTML文件添加一个meta标记,我已经这样做了。

代码语言:javascript
复制
<meta http-equiv="Content-Security-Policy" content="default-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' https://cdnjs.cloudflare.com; style-src 'self' https://ajax.aspnetcdn.com; font-src 'self' http://netdna.bootstrapcdn.com" />

在我的Index.cshtml上,我得到了这个。

代码语言:javascript
复制
<environment names="Staging,Production">
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.8/angular.min.js"
        asp-fallback-src="~/lib/angular/angular.min.js"
        asp-fallback-test="window.angular">
    </script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-router/0.2.15/angular-ui-router.min.js"
        asp-fallback-src="~/lib/angular-ui-router/release/angular-ui-router.js"
        asp-fallback-test="window.angular && window.angularUiRouter">
    </script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular-local-storage/0.2.2/angular-local-storage.min.js"
        asp-fallback-src="~/lib/angular-local-storage/dist/angular-local-storage.js"
        asp-fallback-test="window.angular && window.localStorage">
    </script>

但它们从来不会加载。我已经尝试使用IISExpress和DNX Web命令来运行代码。

我有一篇this文章,这就是我如何创建元标签的,但我不确定为什么它不起作用。我在Chrome上试过了,在控制台下,我得到的错误是这样的

EN

回答 5

Stack Overflow用户

发布于 2016-01-18 19:01:00

将以下内容放入网页页眉部分:

代码语言:javascript
复制
<meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval' http://cdnjs.cloudflare.com ">

有关内容安全策略的更多详细信息,请阅读herehere

票数 14
EN

Stack Overflow用户

发布于 2017-06-13 16:43:59

在我的示例中,此策略是通过SecurityHeadersAttribute设置的(此属性在AccountController和其他一些文件中设置)。

基本上,这会在覆盖meta标记的headers中添加默认策略。因此,您需要更改此策略或从Controller中删除该属性。

票数 3
EN

Stack Overflow用户

发布于 2018-05-10 23:06:38

如果要解决此问题,请在application.conf文件中添加以下内容。

代码语言:javascript
复制
play.filters.disabled += "play.filters.headers.SecurityHeadersFilter"
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34852682

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档