給定一個對對象使用JSON編碼的RESTful服務器後端。 GET請求返回對象{ id: 42, name: 'Peter', age: 28 }
。現在我想知道插入新對象的POST請求是否應以相同形式返回整個對象,或者只返回創建的ID。REST服務器應該在POST上發送整個對象還是僅發送ID?
例如,客戶端發送此請求以在數據庫中創建新條目。
method: POST
url: http://example.com/persons
type: application/json
content: { name: 'Max', age: 35 }
應在服務器與{ id: 43, name: 'Max', age: 35 }
或者只是像43
或{ id: 43 }
創建ID迴應?在這個最小的例子中,我想帶寬並不重要,但實際上,編碼地理區域的屬性更長。
這不取決於你想要對數據做什麼?此外,回送僅適用於服務器已更改的任何字段。客戶知道其他人。 –
@ChristopherCreutzig沒有關於此的指導原則嗎?不是的,你可以根據你的評論寫一個答案,我會將其標記爲已接受。 – danijar
這取決於客戶需要什麼。我和克里斯托弗在一起。如果數據已被服務器更改並且這些更改應傳達給客戶端,我想這個指導原則應該是返回它。 –