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

Gil*_*rdo 15 html javascript c# asp.net asp.net-mvc

我正在使用MVC6(asp.net 5)使用angular并尝试从我的代码在发布模式下运行时从CDN位置加载脚本,但由于某种原因脚本永远不会加载.

我已经读过你需要在你的HTML文件中添加一个元标记,我已经这样做了.

<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" />
Run Code Online (Sandbox Code Playgroud)

在我的Index.cshtml上,我有这个.

<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>
Run Code Online (Sandbox Code Playgroud)

但他们永远不会加载.我尝试使用IISExpress运行代码并使用该DNX Web命令.

我有这篇文章,这就是我如何创建META标签,但不确定为什么它不起作用.我在Chrome中试过这个,在控制台下,我只是遇到了错误

在此输入图像描述

小智 6

将以下内容放在网页标题部分:

<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 ">
Run Code Online (Sandbox Code Playgroud)

有关内容安全策略的更多详细信息,请在此处此处阅读。

  • 这对我有所帮助-请记住,您还必须输入正确的协议-因此,如果使用OP`https:// cdnjs.cloudflare.com` (2认同)