ความหมาย
การตอบกลับของ WebDAV ที่ body XML มีสถานะแยกสำหรับแต่ละ resource ที่ได้รับผลจากคำขอเดียว
สาเหตุที่พบบ่อย
- PROPFIND แสดงรายการในโฟลเดอร์
- COPY, MOVE หรือ DELETE แบบ batch ที่แต่ละรายการให้ผลต่างกัน
วิธีแก้ไข
สำหรับไคลเอนต์หรือผู้เยี่ยมชม
parse ทุกอิลิเมนต์ <response> บางรายการอาจล้มเหลวแม้สถานะรวมจะเป็น 207
สำหรับผู้ดูแลเว็บไซต์หรือ API
ใช้ 207 เฉพาะกับ WebDAV หรือ API แบบ batch ที่มีเอกสารชัดเจน และรายงานสถานะของแต่ละ resource
ตัวอย่างการตอบกลับ
HTTP/1.1
HTTP/1.1 207 Multi-Status
Date: Tue, 07 Oct 2025 09:30:00 GMT
Server: nginx
Content-Type: application/xml; charset=utf-8
<?xml version="1.0" encoding="utf-8"?>
<d:multistatus xmlns:d="DAV:">
<d:response>
<d:href>/files/report.pdf</d:href>
<d:status>HTTP/1.1 200 OK</d:status>
</d:response>
</d:multistatus> ข้อกำหนด
คำถามที่พบบ่อย
› 207 คือสำเร็จหรือล้มเหลว
ตัวมันเองไม่ใช่ทั้งสองอย่าง หมายถึง "ดูใน body" แต่ละรายการมีสถานะของตัวเอง
› REST API ควรใช้ 207 ไหม
API แบบ batch บางตัวใช้ แต่หลายตัวนิยม 200 พร้อมอาร์เรย์ผลลัพธ์รายรายการ ซึ่งง่ายกว่าสำหรับไคลเอนต์ JSON