Tôi đã có một cuộc tranh luận về việc phải làm gì với dấu gạch chéo trong API RESTful.
Hãy nói rằng tôi có một tài nguyên được gọi là chó và tài nguyên cấp dưới cho từng con chó. Do đó chúng ta có thể làm như sau:
GET/PUT/POST/DELETE http://example.com/dogs
GET/PUT/POST/DELETE http://example.com/dogs/{id}
Nhưng chúng ta phải làm gì với trường hợp đặc biệt sau:
GET/PUT/POST/DELETE http://example.com/dogs/
Quan điểm cá nhân của tôi là điều này nói rằng hãy gửi yêu cầu đến một tài nguyên chó riêng lẻ với id = null
. Tôi nghĩ rằng API sẽ trả về 404 cho trường hợp này.
Những người khác nói rằng yêu cầu đang truy cập vào tài nguyên chó, tức là dấu gạch chéo bị bỏ qua.
Có ai biết câu trả lời dứt khoát không?
dogs
và dogs/
tương đương. Đối với tôi rõ ràng đó dogs/
là một thư mục chứa các con chó riêng lẻ. Nó không rõ ràng dogs
là gì , nhưng tôi coi nó là tương đương, giống như hầu hết các máy chủ web chấp nhận truy cập vào các thư mục mà không có dấu vết /
.