コードをリリースモードで実行しているときに、angular=を使用してMVC6(asp.net 5)を使用し、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" />
そして、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>
しかし、それらはロードされません。 IISExpressとDNX Web
コマンドを使用してコードを実行しようとしました。
this postがあり、これがMETAタグの作成方法になりますが、なぜ機能しないのかわかりません。私はこれをChromeで試しましたが、コンソールの下で次のようなエラーが発生します
私の場合、このポリシーはSecurityHeadersAttribute
を介して設定されます(この属性はAccountControllerなどで設定されます)。
基本的に、これはheaders
タグにmeta
タグを上書きするデフォルトポリシーを追加します。したがって、このポリシーを変更するか、コントローラーから属性を削除する必要があります。
問題を回避したい場合は、application.conf
ファイル。
play.filters.disabled += "play.filters.headers.SecurityHeadersFilter"