ความหมาย
คำขอมีรูปแบบถูกต้องแต่มีข้อผิดพลาดเชิงความหมาย เซิร์ฟเวอร์จึงประมวลผลไม่ได้ เดิมชื่อ Unprocessable Entity
สาเหตุที่พบบ่อย
- การตรวจสอบข้อมูลล้มเหลว (อีเมลไม่ถูกต้อง ขาดฟิลด์บังคับ)
- ละเมิดกฎทางธุรกิจ
- ข้อผิดพลาดการตรวจสอบของ Rails หรือ Laravel
วิธีแก้ไข
สำหรับไคลเอนต์หรือผู้เยี่ยมชม
อ่านข้อผิดพลาดของแต่ละฟิลด์ใน body แก้ค่าให้ถูกต้องแล้วส่งใหม่
สำหรับผู้ดูแลเว็บไซต์หรือ API
คืนข้อผิดพลาดรายฟิลด์ที่เครื่องอ่านได้ เพื่อให้ฟอร์มไฮไลต์ได้
ตัวอย่างการตอบกลับ
HTTP/1.1
HTTP/1.1 422 Unprocessable Content
Date: Tue, 07 Oct 2025 09:30:00 GMT
Server: nginx
Content-Type: application/problem+json
{
"type": "about:blank",
"title": "Unprocessable Content",
"status": 422,
"errors": [
{
"field": "email",
"message": "must be a valid email address"
}
]
} ข้อกำหนด
คำถามที่พบบ่อย
› ข้อผิดพลาดการตรวจสอบควรใช้ 400 หรือ 422
หลาย API ใช้ 422 สำหรับการตรวจสอบ และ 400 สำหรับข้อมูลที่ parse ไม่ได้ ถูกต้องทั้งคู่ ขอให้ใช้อย่างสม่ำเสมอ
› 422 ใช้เฉพาะ WebDAV หรือเปล่า
เริ่มจาก WebDAV แต่ตอนนี้ RFC 9110 กำหนดให้ใช้กับ HTTP ทั่วไป