Behebung des Problems „Laden des Skripts verweigert“ in Android Lollipop und höher
Beim Bereitstellen von Apps auf Android-Geräten mit Lollipop oder höher können Benutzer möglicherweise Es kommt der Fehler: „Das Laden des Skripts wurde abgelehnt, da es gegen die folgende Richtlinie zur Inhaltssicherheit verstößt.“ Dieses Problem entsteht aufgrund strengerer Inhaltssicherheitsrichtlinien, die in diesen Versionen implementiert sind.
Verstehen der Inhaltssicherheitsrichtlinie
Die Inhaltssicherheitsrichtlinie (Content Security Policy, CSP) ist eine Sicherheitsmaßnahme, die einschränkt das Laden externer Ressourcen auf einer Webseite. Es hilft, die Ausführung schädlicher Inhalte zu verhindern. Durch die Angabe einer Reihe zulässiger Domänen definiert die Richtlinie, welche Skripte, Stile und Bilder geladen werden können.
Standardrichtlinie für KitKat und davor
Auf Android KitKat und Früher lautete der Standard-CSP:
<meta http-equiv="Content-Security-Policy" content="default-src 'self' data: gap: https://ssl.gstatic.com 'unsafe-inline' 'unsafe-eval'; style-src 'self' 'unsafe-inline'; media-src *">
Diese Richtlinie erlaubt Skripte vom Ursprung der Website („self“) und von einigen bestimmten Domänen, einschließlich Google Analytics („https://ssl.gstatic“) .com').
Eingeschränkte Richtlinie in Lollipop und höher
In Android Lollipop und höher wird der Standard-CSP restriktiver:
<meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-eval' 'unsafe-inline'; object-src 'self'; style-src 'self' 'unsafe-inline'; media-src *">
Diese Richtlinie erlaubt nur Skripte vom Ursprung der Website und erlaubt nicht das Laden von Skripten aus externen Quellen.
Lösung
Um das Problem zu beheben, müssen Sie Folgendes tun Ändern Sie den CSP, um Skripte aus der gewünschten Domäne zuzulassen. In diesem Fall möchten Sie ein Skript von „http://Guess.What.com/MyScript.js“ laden.
Korrigierter CSP
<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'; ">
Durch Hinzufügen der Zeile „script-src 'self' http://Guess.What.com 'unsafe-inline' 'unsafe-eval';“ Zum CSP erlauben Sie ausdrücklich Skripte aus dieser Domäne.
Nach der Implementierung des korrigierten CSP kann das Skript erfolgreich und ohne Fehler geladen werden.
Das obige ist der detaillierte Inhalt vonWie behebt man den Fehler „Das Laden des Skripts wurde abgelehnt' in Android Lollipop und höher?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!