コンテンツ セキュリティ ポリシー エラー: Lollipop 上の Android でのスクリプトのブロック
Lollipop (Android 5.0.0) を実行している Android デバイスに Cordova アプリをデプロイするとき) 以上の場合、「次のコンテンツ セキュリティ ポリシー ディレクティブに違反しているため、スクリプトのロードが拒否されました: 'script-src 'self' 'unsafe-eval' 'unsafe-inline'」というエラー メッセージが表示される場合があります。これは、アプリのデフォルトのコンテンツ セキュリティ ポリシー (CSP) が外部ドメインからのスクリプトの読み込みをブロックしていることを示します。
Android KitKat 以下のデフォルト CSP
Android KitKat (4.4.x) 以前のデフォルトの CSP では、HTML ドキュメントと同じドメイン (「self」)、CDN (例: 「gstatic.com」)、ローカル ストレージ (「data」など) を含む、信頼できるソースからスクリプトを読み込むことができます。 ').
Android Lollipop 以降に必要な変更
Lollipop 以降を実行しているデバイスの場合、外部ドメインからのスクリプトの読み込みを明示的に許可するようにデフォルトの CSP を変更する必要があります。これは、 を更新することで実現できます。 CSP を定義するタグ。
解決策: コンテンツ セキュリティ ポリシーの変更
エラーを修正するには、 タグを更新してみてください。プロジェクトのindex.html ファイル内のタグに、次の内容を含めます:
<code class="html"><meta http-equiv="Content-Security-Policy" content="default-src 'self' data: gap: https://ssl.gstatic.com 'unsafe-eval'; style-src 'self' 'unsafe-inline'; media-src *;**script-src 'self' http://Guess.What.com 'unsafe-inline' 'unsafe-eval';**" /></code>
「http://Guess.What.com/MyScript.js」を、インポートするスクリプトの実際の URL に置き換えます。この変更により、指定されたドメインからスクリプトをロードできるようになり、CSP 違反エラーが解決されます。
以上がLollipop 上の Android で Cordova アプリでコンテンツ セキュリティ ポリシー (CSP) エラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。