Rumah >hujung hadapan web >tutorial js >Bagaimanakah Pengepala `Access-Control-Allow-Origin` Mendayakan Perkongsian Sumber Silang Asal (CORS)?

Bagaimanakah Pengepala `Access-Control-Allow-Origin` Mendayakan Perkongsian Sumber Silang Asal (CORS)?

Patricia Arquette
Patricia Arquetteasal
2024-12-27 07:28:13648semak imbas

How Does the `Access-Control-Allow-Origin` Header Enable Cross-Origin Resource Sharing (CORS)?

Menyahmistikan Pengepala 'Access-Control-Allow-Origin' dalam CORS

Perkongsian sumber silang (CORS) membolehkan kod JavaScript dimuatkan dari satu asal untuk mengakses sumber dari asal yang berbeza. Memahami cara pengepala 'Access-Control-Allow-Origin' memudahkan akses silang asal ini adalah penting.

Cara 'Access-Control-Allow-Origin' Berfungsi

Apabila pelanggan meminta sumber daripada asal yang berbeza, pelayan boleh bertindak balas dengan pengepala 'Access-Control-Allow-Origin'. Pengepala ini menentukan asal mana yang dibenarkan untuk mengakses sumber. Tingkah laku lalai adalah untuk menolak semua permintaan silang asal.

Untuk mendayakan akses silang asal, pelayan mesti menambah pengepala 'Access-Control-Allow-Origin' pada respons. Nilai pengepala ini boleh sama ada domain tertentu (cth., 'http://siteB.com') atau '*,' yang menunjukkan bahawa mana-mana asal dibenarkan untuk mengakses sumber.

Mengendalikan Bukan Mudah Permintaan

Untuk permintaan yang tidak mudah, yang biasanya melibatkan kaedah HTTP selain daripada GET atau POST atau pengepala permintaan bukan standard, penyemak imbas mula-mula menghantar preflight permintaan OPTIONS. Permintaan ini mengesahkan sama ada pelayan akan menerima permintaan yang dimaksudkan.

Jika pelayan membalas permintaan OPTIONS dengan pengepala 'Access-Control-Allow-Headers' dan 'Access-Control-Allow-Methods' yang sesuai, penyemak imbas meneruskan dengan permintaan sebenar.

Contoh Penggunaan

Pertimbangkan perkara berikut senario:

Tapak A: https://siteA.com
Tapak B: https://siteB.com

Kepada dayakan kod JavaScript yang dimuat turun dari Tapak A untuk mengakses sumber di Tapak B:

  1. Tapak A: Ambil kod JavaScript dari Tapak B:
fetch('https://siteB.com/myCode.js')
  // ...
  1. Tapak B: Layan 'myCode.js' dengan 'Access-Control- Benarkan-Asal pengepala:
Access-Control-Allow-Origin: https://siteA.com
  1. JavaScript (Laman A): Kod JavaScript kini boleh membuat permintaan ke Tapak B:
fetch('https://siteB.com/api/data')
  // ...

Dengan memahami cara pengepala 'Access-Control-Allow-Origin' berfungsi, anda boleh mendayakan perkongsian sumber rentas asal dengan berkesan, memastikan kod JavaScript boleh mengakses sumber dari asal yang berbeza dengan lancar.

Atas ialah kandungan terperinci Bagaimanakah Pengepala `Access-Control-Allow-Origin` Mendayakan Perkongsian Sumber Silang Asal (CORS)?. 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