我想了解更多有關REST方法的信息:)。比方說,我有一個ProductTypes集合,可以通過url GET/productTypes進行檢索,並假設我們可以但不必應用任何篩選器。所以這會獲取500條記錄。REST:集合子集部分更新的最佳實踐
現在,如果我想完全更新資源,我可以在/ productTypes/123上使用PUT或POST。到現在爲止還挺好。
如果我創建一個新的資源,我事先知道的ID,我會用在PUT/productTypes/123,並返回201,否則用於更新200
PUT如果我做的部分更新資源我會在/ productTypes/123/displayOrder上執行PUT或POST,並返回303表示某些其他資源已被修改。
但是,如果我在1個POST基本上發送產品ID和顯示順序的Key-Value對列表,並且我修改了500條記錄中的5條,該怎麼辦?我現在如何表明這5條記錄已經改變?
在此部分更新之後,GET at/productTypes會發生什麼情況。我在某處讀到,我不應該用這個get返回多個記錄,而是應該返回列表鏈接到資源,然後一個接一個地讀取它們,因爲這會允許瘋狂的緩存。但是,我仍然如何表明5條記錄已經改變?我需要用303做5個獨立的帖子,還是有不同的機制。希望這是有道理的。
有沒有,你是不是考慮到鏈接到5個修改的資源返回JSON什麼特別的原因?如果POST請求可能對最終用戶有用,則可能會返回一個對象或列表。 – 2013-04-25 19:03:43