Rumah > hujung hadapan web > tutorial js > Bagaimanakah Saya Boleh Membuat Permintaan POST Cross-Domain dalam JavaScript menggunakan CORS?

Bagaimanakah Saya Boleh Membuat Permintaan POST Cross-Domain dalam JavaScript menggunakan CORS?

Mary-Kate Olsen
Lepaskan: 2024-12-16 20:01:10
asal
748 orang telah melayarinya

How Can I Make Cross-Domain POST Requests in JavaScript using CORS?

Menghantar Permintaan POST Merentas Domain melalui JavaScript

Permintaan merentas domain ialah cabaran biasa dalam pembangunan web. Dalam JavaScript, terdapat beberapa cara untuk menghantar permintaan POST merentas domain, tetapi salah satu kaedah paling mudah melibatkan memanfaatkan standard "Perkongsian Sumber Silang Asal" (CORS).

Konfigurasi CORS pada Pelayan

Dayakan CORS pada pelayan yang akan menerima permintaan POST oleh:

  1. Menambahkan pengepala respons berikut:

    • Access-Control-Allow-Origin: from.com (ganti from.com dengan asal usul permintaan)
    • Kaedah-Kawalan-Akses-Benarkan-: POST
    • Access-Control-Max-Age: 1000
    • Access-Control-Allow-Headers: Content-Type, Authorization, X-Requested-with

SIARAN Rentas Domain melalui JavaScript

Dalam JavaScript, anda boleh menggunakan API pengambilan untuk menghantar permintaan POST merentas domain:

fetch('https://to.com/postHere.php', {
  method: 'POST',
  mode: 'cors',
  headers: {
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({ some: 'json' })
})
  .then(response => response.json())
  .then(responseData => {
    console.log(responseData.someKey);
  })
  .catch(error => {
    console.error('POST failed', error);
  });
Salin selepas log masuk

Kod ini membuat permintaan POST ke https://to. com/postHere.php daripada asal yang berbeza (daripada.com). Ia menetapkan pengepala yang diperlukan untuk CORS dan menyelaraskan badan permintaan sebagai JSON.

Mengendalikan Permintaan OPTIONS

Apabila pelanggan menghantar permintaan POST merentas domain, penyemak imbas terlebih dahulu menghantar permintaan OPTIONS kepada pelayan untuk menyemak sama ada pelayan menyokong permintaan tersebut. Pelayan harus membalas permintaan ini dengan pengepala CORS yang sesuai untuk menunjukkan bahawa permintaan POST dibenarkan.

Pertimbangan

  • Kaedah ini memerlukan sokongan CORS pada pelayan.
  • Permintaan akan membuat dua permintaan kepada pelayan: permintaan OPTIONS diikuti dengan POST permintaan.
  • CORS mungkin tidak berfungsi pada semua peranti, terutamanya peranti mudah alih.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membuat Permintaan POST Cross-Domain dalam JavaScript menggunakan CORS?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan