ฉันได้มีการถกเถียงกันว่าจะทำอย่างไรกับการต่อท้ายสแลชใน RESTful API
ให้บอกว่าฉันมีทรัพยากรที่เรียกว่าสุนัขและทรัพยากรรองสำหรับสุนัขแต่ละตัว ดังนั้นเราสามารถทำสิ่งต่อไปนี้:
GET/PUT/POST/DELETE http://example.com/dogs
GET/PUT/POST/DELETE http://example.com/dogs/{id}
แต่เราจะทำอย่างไรกับกรณีพิเศษต่อไปนี้:
GET/PUT/POST/DELETE http://example.com/dogs/
มุมมองส่วนตัวของฉันคือว่าเรื่องนี้ไม่ว่าจะเป็นส่งคำขอไปเป็นทรัพยากรบุคคลที่มีสุนัข id null
= ฉันคิดว่า API ควรส่งคืน 404 สำหรับกรณีนี้
บางคนบอกว่าคำขอกำลังเข้าถึงทรัพยากรสุนัขนั่นก็คือละเว้นการต่อท้ายสแลชจะถูกละเว้น
ไม่มีใครรู้คำตอบที่ชัดเจน?
dogs
และdogs/
เท่าเทียมกัน สำหรับฉันมันชัดเจนว่าdogs/
เป็นไดเรกทอรีที่มีสุนัขแต่ละตัว มันไม่ชัดเจนสิ่งที่dogs
เป็น /
แต่ฉันรักษามันเป็นเทียบเท่าเช่นเดียวกับเว็บเซิร์ฟเวอร์ส่วนใหญ่ยอมรับการเข้าถึงไปยังไดเรกทอรีโดยไม่ต้องต่อท้าย