Maison  >  Article  >  interface Web  >  Pourquoi mon application Cordova rencontre-t-elle une erreur de politique de sécurité du contenu (CSP) sur Android au-dessus de Lollipop ?

Pourquoi mon application Cordova rencontre-t-elle une erreur de politique de sécurité du contenu (CSP) sur Android au-dessus de Lollipop ?

Patricia Arquette
Patricia Arquetteoriginal
2024-10-19 13:10:29847parcourir

Why is my Cordova App Encountering a Content Security Policy (CSP) Error on Android Above Lollipop?

Erreur de politique de sécurité du contenu : blocage de script dans Android au-dessus de Lollipop

Lors du déploiement d'une application Cordova sur des appareils Android exécutant Lollipop (Android 5.0.0 ) ou supérieur, vous pouvez rencontrer le message d'erreur : "Refusé de charger le script car il viole la directive de politique de sécurité du contenu suivante : 'script-src 'self' 'unsafe-eval' 'unsafe-inline'." Cela indique que la politique de sécurité du contenu (CSP) par défaut de l'application bloque le chargement d'un script à partir d'un domaine externe.

CSP par défaut pour Android KitKat et versions antérieures

Le Le CSP par défaut pour Android KitKat (4.4.x) et versions antérieures permet de charger des scripts à partir de sources fiables, y compris le même domaine que le document HTML (« soi »), le CDN (par exemple, « gstatic.com ») et le stockage local (« données »). ').

Modifications requises pour Android Lollipop et supérieur

Pour les appareils exécutant Lollipop ou version ultérieure, le CSP par défaut doit être modifié pour autoriser explicitement le chargement de scripts à partir de domaines externes. Ceci peut être réalisé en mettant à jour le fichier tag responsable de la définition du CSP.

Solution : Modification de la politique de sécurité du contenu

Pour corriger l'erreur, vous pouvez essayer de mettre à jour la balise balise dans le fichier index.html de votre projet avec le contenu suivant :

<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>

Remplacez "http://Guess.What.com/MyScript.js" par l'URL réelle du script que vous souhaitez importer. Cette modification permet de charger le script à partir du domaine spécifié, résolvant ainsi l'erreur de violation CSP.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn