วิธีแก้ 415 unsupported media type ใน Angular มีดังนี้
- ตรวจสอบว่า Content-Type ของ HTTP request ถูกต้องหรือไม่
- ตรวจสอบว่า server อนุญาต Content-Type นั้นหรือไม่
หาก Content-Type ของ HTTP request ไม่ถูกต้องหรือ server ไม่อนุญาต Content-Type นั้น จะเกิดข้อผิดพลาด 415 unsupported media type
ตัวอย่างการแก้ 415 unsupported media type
สมมติว่าเรามี route ดังนี้
1 | const routes: Routes = [ |
หากเราพยายามส่ง HTTP request POST ไปที่ route นี้ด้วย Content-Type ที่ไม่ได้เป็น JSON ระบบจะเกิดข้อผิดพลาด 415 unsupported media type เนื่องจาก route นี้อนุญาตเฉพาะ Content-Type JSON
วิธีแก้คือแก้ไข HTTP request ให้ใช้ Content-Type JSON หรือแก้ไข route ให้อนุญาต Content-Type อื่นๆ ด้วย ตัวอย่างเช่น
แก้ไข HTTP request
1 | // เปลี่ยน Content-Type เป็น application/json |
แก้ไข route
1 | const routes: Routes = [ |
วิธีแก้ 415 unsupported media type แบบละเอียด
หากเกิดข้อผิดพลาด 415 unsupported media type เราสามารถตรวจสอบสาเหตุของข้อผิดพลาดได้ดังนี้
- ตรวจสอบว่า Content-Type ของ HTTP request ถูกต้องหรือไม่
Content-Type ของ HTTP request จะต้องตรงกับ Content-Type ที่ server อนุญาต
เราสามารถตรวจสอบ Content-Type ของ HTTP request ได้โดยตรวจสอบ headers ของ HTTP request
- ตรวจสอบว่า server อนุญาต Content-Type นั้นหรือไม่
นอกจาก route แล้ว server เองก็อาจกำหนดว่า Content-Type ใดบ้างที่อนุญาตให้ใช้กับทรัพยากรนั้น
เราสามารถตรวจสอบว่า server อนุญาต Content-Type นั้นหรือไม่ได้โดยตรวจสอบ configuration ของ server
หากตรวจสอบแล้วพบว่า Content-Type ของ HTTP request ไม่ถูกต้องหรือ server ไม่อนุญาต Content-Type นั้น เราสามารถแก้ไข HTTP request หรือ server ให้ถูกต้องได้ตามต้องการ