在设计使用数据存储区的RESTful API时,该数据存储区使用自动生成的ID(否则没有任何可靠的唯一值),如何指定添加(PUT)操作?
例如:
GET /widgets/
将返回所有小部件的列表。
GET /widgets/123
将返回特定小部件的信息。
POST /widgets/123
会更新小部件。
但是添加小部件的URL是什么?
PUT /widgets/???
即,我(作为客户)在添加ID之前不知道ID。
答案 0 :(得分:1)
REST约定通常指定用于创建的POST和用于更新的PUT。这是因为PUT以及GET和DELETE是幂等方法。这意味着它们可以运行任意次,并且服务器的状态应该相同。 POST是一种非幂等操作,这意味着每次运行操作后服务器状态都不保证是相同的。
通常,您会发送到/widgets
网址以添加项目。
有关详细信息,请参阅this。