クライアントがサーバーにファイルを送信する API を設計してPUT
いますが、サーバーには既にこのファイルのコピーがあり、再アップロードする必要がない場合があります。
Expect: 100-continue
クライアントが非効率的なアップロード全体を実行する前に、サーバーがクライアントに通知できるように、私はすでに使用を計画しています。
私の質問は、サーバーがアップロードを必要としない場合の代わりに返すのに最適なステータス コードは何ですか?100 Continue
通常、クライアントはヘッダーを送信でき、サーバーはすでに一致する場合に でIf-None-Match
応答できます。412 Precondition Failed
しかし、私の場合、重複排除はほとんど実装の詳細であり、クライアントが重複排除戦略 (たとえば、一致する値は何か) を知ることに関心を持ちたくありません。
302 Found
、303 See Other
、または は304 Not Modified
意味がありますか?
クライアントエラーではないため、またはクライアントで自動再試行ロジックをトリガーしたくないため、 a4xx
は適切ではないようです。5xx
ありがとう!