ความหมาย
เซิร์ฟเวอร์สั่งให้ไคลเอนต์ดึง URL อื่นด้วย GET โดยมากเพื่อแสดงผลลัพธ์ของ POST
สาเหตุที่พบบ่อย
- Post/Redirect/Get หลังส่งฟอร์ม
- API ชี้ไปยังผลลัพธ์ของงานที่ใช้เวลานาน
วิธีแก้ไข
สำหรับไคลเอนต์หรือผู้เยี่ยมชม
ส่ง GET ไปยัง Location วิธีนี้ป้องกันการส่งซ้ำเมื่อผู้ใช้รีเฟรช
สำหรับผู้ดูแลเว็บไซต์หรือ API
ใช้ 303 หลัง POST ฟอร์มสำเร็จเพื่อส่งผู้ใช้ไปหน้าผลลัพธ์ การโหลดใหม่จะไม่ส่งฟอร์มซ้ำ
ตัวอย่างการตอบกลับ
HTTP/1.1
HTTP/1.1 303 See Other
Date: Tue, 07 Oct 2025 09:30:00 GMT
Server: nginx
Location: /orders/1001
Content-Length: 0 ข้อกำหนด
คำถามที่พบบ่อย
› รูปแบบ Post/Redirect/Get คืออะไร
หลัง POST เซิร์ฟเวอร์คืน 303 ไปยังหน้าผลลัพธ์ เบราว์เซอร์โหลดหน้านั้นด้วย GET การรีเฟรชและกดย้อนกลับจึงปลอดภัย
› 303 หรือ 302
303 หมายถึง "GET URL อื่น" เสมอ 302 ไม่ได้ระบุเมธอด แม้เบราว์เซอร์จะเปลี่ยนเป็น GET เช่นกัน