[英]REST API HTTP methods
我們計划將GET
用於所有檢索,將DELETE
用於所有刪除操作。 HTTP PUT
, POST
和PATCH
令人困惑。 經過大量閱讀,這是我的理解。 如果我錯了,請更正。
POST
-不是冪等; 因此可用於創建新資源/下級資源。 每次創建新ID時,ID都會更改,因此最適合。
PUT
冪等 由於第二次出現相同的請求,因此不能用於創建,它會再次創建具有不同ID的新資源。 可以用於更新,但是每次更新時都應傳遞所有屬性。 為此,應在更新操作之前完成GET
。 高架。
為什么不也使用POST
進行更新?
PATCH
-不確定是否適合JAX-RS 1.1。
提前致謝。
我認為您的問題是這樣的:
為什么不也使用POST進行更新?
使用POST
和PUT
對資源進行不同類型的更改的好處是,您允許額外的請求向量來修改操作,而不必添加更多URL。 這樣,URL可以保持簡短,整潔並反映其代表的含義。
但是,為了清除故障, PATCH
通常用於部分更新。 因此,就像PUT
一樣,它是冪等的,但是只會修改您在請求正文中發送的資源部分,而PUT
則希望修改整個內容。 這在REST中經常被忽略。 您可以在Rest Cookbook網站上閱讀更多內容 。
除此之外,據我所知,這是非常好的。 享受休息!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.