Menyelesaikan Isu "Enggan Memuatkan Skrip" dalam Android Lollipop dan Ke Atas
Apabila menggunakan apl ke peranti Android dengan Lollipop atau lebih tinggi, pengguna boleh menghadapi ralat: "Enggan memuatkan skrip kerana ia melanggar arahan Dasar Keselamatan Kandungan berikut." Isu ini timbul disebabkan oleh dasar keselamatan kandungan yang lebih ketat yang dilaksanakan dalam versi ini.
Memahami Dasar Keselamatan Kandungan
Dasar Keselamatan Kandungan (CSP) ialah langkah keselamatan yang mengehadkan memuatkan sumber luaran pada halaman web. Ia membantu menghalang kandungan berniat jahat daripada dilaksanakan. Dengan menentukan set domain yang dibenarkan, dasar ini mentakrifkan skrip, gaya dan imej yang boleh dimuatkan.
Dasar Lalai untuk KitKat dan Sebelumnya
Pada Android KitKat dan sebelum ini, CSP lalai ialah:
<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 *">
Dasar ini membenarkan skrip dari asal tapak ('diri') dan daripada beberapa domain tertentu, termasuk Analitis Google ('https://ssl.gstatic .com').
Dasar Terhad dalam Lollipop dan Ke Atas
Dalam Android Lollipop dan ke atas, CSP lalai menjadi lebih terhad:
<meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-eval' 'unsafe-inline'; object-src 'self'; style-src 'self' 'unsafe-inline'; media-src *">
Dasar ini hanya membenarkan skrip daripada asal tapak dan tidak membenarkan memuatkan skrip daripada sumber luaran.
Penyelesaian
Untuk menyelesaikan isu, anda perlu ubah suai CSP untuk membenarkan skrip daripada domain yang dikehendaki. Dalam kes ini, anda ingin memuatkan skrip daripada "http://Guess.What.com/MyScript.js."
CSP yang Dibetulkan
<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'; ">
Dengan menambah baris "script-src 'self' http://Guess.What.com 'unsafe-inline' 'unsafe-eval';" kepada CSP, anda secara eksplisit membenarkan skrip daripada domain tersebut.
Selepas melaksanakan CSP yang diperbetulkan, skrip boleh dimuatkan dengan jayanya tanpa sebarang ralat.
Atas ialah kandungan terperinci Bagaimana untuk Membetulkan Ralat \'Enggan Memuatkan Skrip\' dalam Android Lollipop dan Ke Atas?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!