← กลับไปยังคุณสมบัติ
Free

CORS Checker

CORS Checker ช่วยทดสอบว่าคำขอ Cross-Origin จากไซต์ของคุณจะได้รับอนุญาตจากเซิร์ฟเวอร์ปลายทางหรือไม่ โดยมีการรันทั้งคำขอ Preflight (OPTIONS) และคำขอจริง รายงานผลการประเมินว่า ALLOWED (อนุญาต) หรือ BLOCKED (ปิดกั้น) พร้อมแยกรายละเอียดของ Access-Control-Allow-Origin, Methods, Headers และ Credentials เพื่อให้คุณระบุจุดที่ผิดพลาดของคำขอได้อย่างแม่นยำ

"Blocked by CORS" เป็นหนึ่งในข้อผิดพลาดที่น่าสับสนที่สุดในการพัฒนาเบราว์เซอร์ — เนื่องจากเบราว์เซอร์จะปิดกั้นคำขออย่างเงียบเชียบโดยไม่คืนข้อมูลที่เป็นประโยชน์กลับไปยังโค้ดของคุณ และการอ่านส่วนหัว (Header) ของ CORS ดิบๆ ก็น่าเบื่อ CORS Checker จะทำให้ภาพรวมทั้งหมดชัดเจนขึ้น เพียงระบุ URL ปลายทาง, วิธีการ HTTP (Method) และ Origin ที่คุณต้องการทดสอบ (ค่าเริ่มต้นคือหน้าเว็บปัจจุบันของคุณ) และสามารถระบุรายการส่วนหัวของคำขอ (Request Header) ที่คุณต้องการส่งไป (เช่น content-type, authorization ฯลฯ) เครื่องมือจะรันคำขอ Preflight (OPTIONS) (ซึ่งจะถูกเพิ่มโดยอัตโนมัติเมื่อคำขอนั้นไม่ใช่คำขอแบบ "Simple") ตามด้วยคำขอจริง และพาร์สทุกส่วนหัวการตอบกลับของ CORS ที่เกี่ยวข้อง จากนั้นจะแสดงผลการประเมินแยกตามเกณฑ์: Allow-Origin ตั้งค่าถูกต้องหรือไม่, Allow-Methods ครอบคลุม Method ของคุณหรือไม่, ส่วนหัวที่คุณกำหนดเองอยู่ใน Allow-Headers หรือไม่, และ Allow-Credentials ตรงกับแฟลก Credentials ของคุณหรือไม่ ผลลัพธ์สุดท้ายจะชัดเจน — ALLOWED หรือ BLOCKED — พร้อมรายการตรวจสอบรายข้อที่บอกคุณได้อย่างแม่นยำว่าต้องแก้ไขอะไรในฝั่ง Backend

ตัวอย่างสด
example.com
ตัวตรวจสอบ CORS ✓ การทดสอบเสร็จสิ้น
POST https://api.backend.com/users
Origin:https://app.example.com Headers:content-type,authorization
✓ คำขอจะได้รับอนุญาต (ALLOWED)
การตรวจสอบ
Allow-Origin ตรงกับ https://app.example.com
อนุญาตให้ใช้เมธอด POST
ส่วนหัวของคำขอได้รับอนุญาตโดย Allow-Headers
Preflight (OPTIONS) · 204 No Content
access-control-allow-origin: https://app.example.com
access-control-allow-methods: GET, POST, PUT, DELETE
access-control-allow-headers: content-type, authorization
access-control-max-age: 86400
คุณสมบัติหลัก

ตรวจจับ Preflight อัตโนมัติ

ตรวจจับเมื่อคำขอ Preflight (OPTIONS) ต้องทำงาน (กรณีใช้ Method ที่ไม่ใช่แบบ Simple หรือมีส่วนหัวที่กำหนดเอง) และส่งคำขอให้อัตโนมัติพร้อมส่วนหัว Access-Control-Request-* ที่ถูกต้อง

แยกรายละเอียดการตรวจสอบ

กฎ CORS แต่ละข้อจะถูกประเมินแยกกัน: การจับคู่ Origin, Method ที่อนุญาต, ส่วนหัวที่อนุญาต, และ Credentials คุณจะเห็นทันทีว่าการตรวจสอบข้อไหนที่ไม่ผ่าน

ผลการประเมินที่ชัดเจน

แถบแบนเนอร์สีเขียว ALLOWED หรือสีแดง BLOCKED ขนาดใหญ่ด้านบน — ไม่ต้องเสียเวลาไล่อ่านส่วนหัวเพื่อหาคำตอบเอง

ตรวจสอบส่วนหัวอย่างละเอียด

แสดงทุกส่วนหัวการตอบกลับจากทั้งคำขอ Preflight และคำขอจริง พร้อมไฮไลต์ส่วนหัวที่เกี่ยวกับ CORS โดยเฉพาะ

ทดสอบด้วย Origin ที่กำหนดเอง

จำลองเป็น Origin ใดก็ได้ ไม่ใช่แค่หน้าปัจจุบัน — มีประโยชน์สำหรับการทดสอบว่าการเชื่อมต่อจากภายนอก (Third-party) จะถูกจัดการอย่างไร

ทำงานจาก Background

การตรวจสอบรันจาก Background ของส่วนขยาย ดังนั้นการ Fetch แบบ Cross-origin จะไม่ถูกปิดกั้นโดยนโยบาย CORS ของหน้าเว็บต้นทางเอง

กรณีการใช้งานทั่วไป

ดีบั๊กข้อผิดพลาด "Blocked by CORS"

เมื่อ Frontend ของคุณแสดงข้อผิดพลาด CORS ใน Console ให้ใช้เครื่องมือนี้ดูว่าส่วนหัวไหนที่ Backend ขาดไป — รวดเร็วกว่าการไปไล่อ่านเอกสารมาตรฐาน

ตรวจสอบการตั้งค่า CORS ของ API

ก่อนจะเปิดใช้งาน API สาธารณะตัวใหม่ ให้ทดสอบผ่านเครื่องมือนี้เพื่อยืนยันว่าทุกการผสมผสานของ Origin, Method และส่วนหัวทำงานได้ตามที่คาดหวัง

ทดสอบการเชื่อมต่อกับบริการภายนอก

เมื่อต้องเชื่อมต่อกับ API ภายนอก ให้ทดสอบจาก Origin ของคุณพร้อมส่วนหัวที่วางแผนไว้เพื่อยืนยันว่าคำขอจะผ่านไปได้

ดีบั๊กการแคช Preflight

ตรวจสอบค่า Access-Control-Max-Age เพื่อดูว่าเบราว์เซอร์จะแคชผลลัพธ์ Preflight ไว้นานแค่ไหน — มีประโยชน์เมื่อต้องทดสอบหลังจากเปลี่ยนค่าส่วนหัว

ทดสอบข้ามสภาพแวดล้อม

รันการทดสอบ CORS เดียวกันกับ URL ของ Dev, Staging และ Prod เพื่อดักจับการตั้งค่าที่ผิดพลาดเฉพาะในบางสภาพแวดล้อมก่อนที่ผู้ใช้จะเจอ

วิธีใช้งาน
1

เปิดเครื่องมือ CORS Checker

คลิกไอคอน CORS ใน DevSuite Pro dock แผงควบคุมจะเปิดขึ้นพร้อมช่องใส่ URL, Method, Origin และส่วนหัวของคำขอ

2

ระบุ URL ปลายทางและ Method

วาง URL ของ API Endpoint ที่คุณต้องการทดสอบ และเลือกวิธีการ HTTP (GET, POST, PUT, DELETE ฯลฯ)

3

ตั้งค่า Origin และส่วนหัว

Origin จะเป็นค่าเริ่มต้นของหน้าปัจจุบัน เปลี่ยนได้หากต้องการทดสอบ Origin อื่น ระบุส่วนหัวของคำขอที่กำหนดเองโดยคั่นด้วยเครื่องหมายจุลภาค

4

คลิก Test CORS

เครื่องมือจะรัน Preflight (ถ้าจำเป็น) และคำขอจริง จากนั้นจะแสดงผลการประเมินและรายการตรวจสอบ

5

อ่านผลและแก้ไข

หากขึ้นสถานะ BLOCKED รายการตรวจสอบจะบอกว่าส่วนไหนที่ขาดหายไปจากการตอบกลับของเซิร์ฟเวอร์ ให้แก้ไขส่วนหัวในฝั่ง Backend แล้วทดสอบใหม่

พร้อมที่จะลองหรือยัง?

ติดตั้ง DevSuite Pro ฟรีและปลดล็อกเครื่องมือสำหรับนักพัฒนามากกว่า 64 รายการสำหรับเบราว์เซอร์ของคุณ

เพิ่มใน Chrome เพิ่มไปยัง Edge เพิ่มใน FireFox