Kiểm tra CORS — Gỡ lỗi CORS

Bị chặn bởi lỗi CORS? Nhập địa chỉ API và origin của trang web bạn. Chúng tôi sẽ gửi các yêu cầu giống như trình duyệt, chỉ ra chính xác phần nào bị lỗi và đưa cách sửa trên máy chủ.

Cập nhật

Công cụ này lấy URL công khai bạn nhập từ máy chủ của chúng tôi. Kết quả được giữ trong bộ nhớ tạm thời vài phút và không bao giờ được lưu vào cơ sở dữ liệu.

Công cụ này có hữu ích không?0.0 0 lượt đánh giá
Tạo CORS header cho ExpressNginx, Apache, Netlify, Vercel, Next.js hoặc Workers và kiểm tra preflight của URL bất kỳ để biết vì sao request bị chặn.Tạo & Kiểm tra CORS Header →

Cách dùng Kiểm tra CORS

  1. Nhập địa chỉ API đang lỗi, và địa chỉ trang web của bạn làm origin.
  2. Chọn phương thức và thêm các header tùy chỉnh nếu có, chẳng hạn Authorization.
  3. Tích Gửi cookies nếu yêu cầu của bạn dùng credentials, rồi nhấn Kiểm tra CORS.
  4. Đọc phần bị lỗi, sau đó sao chép cách sửa phù hợp với máy chủ của bạn.

CORS là gì?

Trình duyệt sẽ chặn một trang từ website này đọc phản hồi từ website khác, trừ khi máy chủ kia cho phép. Cross-Origin Resource Sharing (CORS) là cơ chế để cho phép việc đó, thông qua các header phản hồi Access-Control-Allow-*. Lỗi này phải được sửa ở máy chủ, không phải trong mã front-end của bạn.

Preflight là gì?

Với một số yêu cầu, chẳng hạn PUT, DELETE hoặc yêu cầu có header Authorization, trình duyệt sẽ gửi trước một yêu cầu OPTIONS để xin phép. Nếu bước này thất bại, yêu cầu thật sẽ không bao giờ được gửi đi.

Các lỗi CORS thường gặp

  • Không có header Access-Control-Allow-Origin: máy chủ chưa thêm header CORS. Các trang lỗi cũng thường thiếu header này, nên hãy kiểm tra xem yêu cầu có đang thất bại vì lý do khác không.
  • Dùng dấu sao với credentials: * không thể dùng cùng cookies. Hãy gửi đúng origin cụ thể.
  • Preflight thất bại: máy chủ phải trả lời OPTIONS với trạng thái 2xx, trước khi kiểm tra đăng nhập.
  • Có nhiều giá trị: hai tầng, chẳng hạn proxy và ứng dụng, có thể cùng thêm header này.

Giữ an toàn

Chỉ cho phép các origin mà bạn tin cậy. Đừng sao chép lại header Origin nhận được mà không kiểm tra với danh sách cho phép, nhất là khi có credentials, vì khi đó bất kỳ trang nào cũng có thể đọc dữ liệu của người dùng bạn.

Muốn tự tạo header từ đầu? Hãy dùng CORS Header Generator. Để kiểm tra toàn bộ phản hồi, hãy thử HTTP Header Checker.

Cũng được tìm dưới tên: lỗi cors, test cors online, cách sửa lỗi cors, blocked by cors policy, access-control-allow-origin checker, cors preflight là gì, no access-control-allow-origin header.

Các công cụ dùng kèm tốt với Kiểm tra CORS

  • Kiểm thử API — Công cụ Postman thu gọn chạy ngay trên trình duyệt: tạo HTTP request, gửi đi và xem trạng thái, thời gian, header cùng nội dung JSON đã được định dạng.
  • Kiểm tra Security Headers — Chấm điểm security headers HTTP của website từ A+ đến F, xem header nào đang thiếu và vì sao chúng quan trọng, rồi sao chép đoạn cấu hình sẵn cho Nginx, Apache, Netlify, Vercel hoặc Cloudflare.
  • Mã trạng thái HTTP — Giải thích mọi mã phản hồi HTTP chuẩn bằng ngôn ngữ dễ hiểu, kèm cách dùng và ảnh hưởng đến SEO.
  • Phân tích Email Header — Dán header gốc của email để xem toàn bộ hành trình: từng máy chủ trung gian cùng thời gian xử lý, kết quả SPF, DKIM và DMARC, IP gốc, và các dấu hiệu cảnh báo như Reply-To hoặc Return-Path không khớp.

Câu hỏi thường gặp

Vì sao API của tôi chạy được trong Postman nhưng không chạy trên trình duyệt?
CORS do trình duyệt áp dụng. Postman không áp dụng quy tắc này, nên cùng một yêu cầu có thể chạy được ở đó nhưng vẫn lỗi trên trang web của bạn.
Tôi có thể sửa CORS ở phía front-end không?
Không. Máy chủ phải là nơi gửi các header. Nếu bạn không kiểm soát máy chủ, hãy gọi API thông qua backend của chính bạn.
Dùng Access-Control-Allow-Origin: * có an toàn không?
Được với dữ liệu công khai không cần đăng nhập. Đừng dùng cho dữ liệu riêng tư.
Kết quả kiểm tra này có giống với trình duyệt thật không?
Công cụ gửi các yêu cầu tương tự từ máy chủ của chúng tôi và áp dụng quy tắc của trình duyệt. Kết quả có thể khác nếu máy chủ của bạn xử lý khách truy cập hoặc vị trí địa lý theo cách riêng.

Công cụ liên quan