0
在設計使用使用自動生成的ID的數據存儲的RESTful API(並且沒有任何可靠的唯一值)時,如何指定添加(PUT)操作?如何在RESTful API中處理自動生成的ID?
例如:
GET /widgets/
將返回所有小工具的列表。
GET /widgets/123
會返回特定窗口小部件的信息。
POST /widgets/123
會更新小部件。
但是,添加小部件的URL是什麼?
PUT /widgets/???
即,我(作爲客戶)在我添加它之前不知道ID。
啊okey dokey我有那些錯誤的方式。我確信我正在閱讀的文章說他們是相反的,但是有很多錯誤信息。 – stusmith 2011-04-12 15:29:52
@stusmith:存在大量的錯誤信息,但是發給父代的POST是正確的(ID分配不是冪等的),它應該返回一個鏈接/重定向到剛創建的資源。 – 2011-04-12 15:46:13
@stusmith您可以使用PUT或POST創建資源,PUT的限制是您需要知道將PUT放在哪裏,因此您需要事先知道ID。你也可以用PUT,POST或PATCH來更新資源,這取決於最有意義的東西,這就是爲什麼人們試圖將HTTP方法映射到CRUD的原因。 – 2011-04-12 23:14:33