この質問は、再試行されたPOST
要求にどのように対応するかについてです。RESTful POST再試行応答
POST
は、等価性を保証する必要はありませんが、多くの場合、これを行う必要があります。たとえば、/orders
リソースにPOST
で作成された注文は、要求または応答がさまざまな理由で失敗する可能性があるため、安全に再試行できる必要があります(ストライプhttps://stripe.com/blog/idempotencyは、リクエストごとに一意のIDempotencyキーを使用してこれを処理することを推奨します)。
APIが201 Created
で再試行する必要がありますか、または再試行されたリクエストで200 OK
である必要がありますか?推奨されるアプローチは何ですか?
再試行された要求の返信は正しいとは思われません。前述の要求が実際にリソースを作成した可能性があり、再試行されたものは効果がありませんでした(たとえば、リソースが最初に作成されたときにクライアントが応答を受信しないこれにより再試行されました)