Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Menyelesaikan Ralat "Kandungan Campuran Disekat" dalam Permintaan AJAX HTTPS?

Bagaimana untuk Menyelesaikan Ralat "Kandungan Campuran Disekat" dalam Permintaan AJAX HTTPS?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-13 01:30:02924semak imbas

How to Solve the

Isu "Kandungan Campuran Disekat" dalam Operasi AJAX HTTPS

Gambaran Keseluruhan Masalah:

Halaman HTTPS menggunakan AJAX untuk menyerahkan permintaan GET ke HTTP titik akhir menghadapi ralat "Kandungan Campuran", menghalang operasi.

Penyelesaian:

Punca ralat ini cuba memuatkan kandungan bercampur (halaman HTTPS mengakses titik akhir HTTP).

Pendekatan 1: Menggunakan Fail PHP sebagai Perantara
Jika mengubah suai API untuk menyokong HTTPS tidak dapat dilaksanakan, buat fail PHP (cth. form.php) yang:

  1. Menerima data daripada permintaan AJAX.
  2. Majukan data ke API HTTP menggunakan cURL.
  3. Mengubah hala pengguna ke halaman "terima kasih".

Pendekatan 2: Dasar Keselamatan Kandungan (CSP)
Jika mengubah suai API atau menggunakan fail PHP tidak dapat dilakukan, tambahkan teg meta berikut pada halaman HTML:

<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">

Ini mengarahkan penyemak imbas untuk menaik taraf permintaan HTTP secara automatik kepada HTTPS, menyelesaikan isu kandungan bercampur.

Cadangan:
Pendekatan 1 diutamakan kerana ia memastikan penyerahan data selamat dan menghalang ralat "Kandungan Campuran" tanpa mengubah suai halaman HTML.

Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Ralat "Kandungan Campuran Disekat" dalam Permintaan AJAX HTTPS?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn