Access-Control-Allow-Origin header

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

Tiêu đề HTTP Access-Control-Allow-Origin phản hồi chỉ ra liệu phản hồi có thể được chia sẻ với mã yêu cầu từ nguồn gốc đã cho hay không.

Loại tiêu đề Tiêu đề phản hồi

Cú pháp

http
Access-Control-Allow-Origin: *
Access-Control-Allow-Origin: <origin>
Access-Control-Allow-Origin: null

Chỉ thị

* (ký tự đại diện)

Mã yêu cầu từ bất kỳ nguồn gốc nào được phép truy cập tài nguyên. Đối với các yêu cầu không có thông tin xác thực, giá trị chữ * có thể được chỉ định làm ký tự đại diện. Cố gắng sử dụng ký tự đại diện với thông tin xác thực dẫn đến lỗi.

<origin>

Chỉ định một nguồn gốc đơn. Nếu máy chủ hỗ trợ máy khách từ nhiều nguồn gốc, nó phải trả về nguồn gốc cho máy khách cụ thể đang thực hiện yêu cầu.

null

Chỉ định nguồn gốc "null".

Note: Không nên sử dụng giá trị null. Có vẻ an toàn khi trả về Access-Control-Allow-Origin: "null"; tuy nhiên, nguồn gốc của các tài nguyên sử dụng scheme phi phân cấp (như data: hoặc file:) và các tài liệu được sandbox được tuần tự hóa là null. Nhiều trình duyệt sẽ cấp cho các tài liệu như vậy quyền truy cập vào phản hồi có tiêu đề Access-Control-Allow-Origin: null, và bất kỳ nguồn gốc nào cũng có thể tạo tài liệu thù địch với nguồn gốc null. Do đó, giá trị null cho tiêu đề Access-Control-Allow-Origin nên được tránh.

Ví dụ

Phản hồi cho trình duyệt biết rằng mã từ bất kỳ nguồn gốc nào được phép truy cập tài nguyên sẽ bao gồm:

http
Access-Control-Allow-Origin: *

Phản hồi cho trình duyệt biết rằng mã yêu cầu từ nguồn gốc https://mdn.go-mizu.dev được phép truy cập tài nguyên sẽ bao gồm:

http
Access-Control-Allow-Origin: https://mdn.go-mizu.dev

Giới hạn các giá trị Access-Control-Allow-Origin có thể có trong một tập hợp các nguồn gốc được phép yêu cầu mã phía máy chủ kiểm tra giá trị của tiêu đề yêu cầu Origin, so sánh với danh sách các nguồn gốc được phép, và nếu giá trị Origin nằm trong danh sách, đặt giá trị Access-Control-Allow-Origin bằng giá trị Origin.

CORS và bộ nhớ đệm

Giả sử máy chủ gửi phản hồi có giá trị Access-Control-Allow-Origin với nguồn gốc rõ ràng (thay vì ký tự đại diện *). Trong trường hợp đó, phản hồi cũng nên bao gồm tiêu đề phản hồi Vary với giá trị Origin — để chỉ ra cho trình duyệt rằng các phản hồi của máy chủ có thể khác nhau dựa trên giá trị của tiêu đề yêu cầu Origin.

http
Access-Control-Allow-Origin: https://mdn.go-mizu.dev
Vary: Origin

Thông số kỹ thuật

Specification
Fetch
# http-access-control-allow-origin

Khả năng tương thích trình duyệt

Xem thêm