我一直在争论如何使用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/
是一个包含各个狗的目录。它不清楚是什么dogs
,但我将其视为等同,就像大多数Web服务器接受目录访问而没有尾随一样/
。