エンドポイントが/api/todos
で、私がPATCH
のいずれかの変更を要求したとします。私のPATCH
リクエストがすべてのtodosのリストをレスポンス本文に含めることは理にかなっていますか?PATCH要求への応答
私はこれについて読むことができる仕様はありますか?
私はいくつかの開発者に話しましたが、一般的なコンセンサスは、PATCH
メソッドは変更されたエントリのみを返す必要があるということです。私はこの点に同意しますが、これを詳述する文書を探しています。
エンドポイントが/api/todos
で、私がPATCH
のいずれかの変更を要求したとします。私のPATCH
リクエストがすべてのtodosのリストをレスポンス本文に含めることは理にかなっていますか?PATCH要求への応答
私はこれについて読むことができる仕様はありますか?
私はいくつかの開発者に話しましたが、一般的なコンセンサスは、PATCH
メソッドは変更されたエントリのみを返す必要があるということです。私はこの点に同意しますが、これを詳述する文書を探しています。
RFCはhereです。
しかし、実際には何も指定していません。ここにその例があります:
Successful PATCH response to existing text file:
HTTP/1.1 204 No Content
Content-Location: /file.txt
ETag: "e0023aa4f"
The 204 response code is used because the response does not carry a
message body (which a response with the 200 code would have). Note
that other success codes could be used as well.
あなたはそれを実装することができます。変更されたエントリだけで応答すると、他のメソッド(PUT、DELETEなど)がどのように処理されるかがよりインラインになるため、私はそうするでしょう。
したがって、RESTfull APIを提供する場合/api/todos
は、すべてのToDoが別のIDを持つリソースを表します。ここでパッチを当てます。/api/todos/4に変更して、ID 4のtodoを更新します。 ここでの通常の動作は、更新されたtodoを取得する別の要求を保存するために、204ステータスコードか更新されたオブジェクトで応答することです。
あなたのToDoがidを持つ別個のオブジェクトでない場合は、適切にアイテムのリストであり、一度にすべて返される必要があります。
https://www.greenbytes.de/tech/webdav/rfc7240.html#returnが参考になる場合があります。 –
@JulianReschkeこれはまさに私が探していたものでした。ありがとう! –