콘텐츠 보안 정책 오류: 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 위반 오류를 해결할 수 있습니다.
위 내용은 Android에서 Lollipop 위의 Cordova 앱에 CSP(콘텐츠 보안 정책) 오류가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!