HTTP 428 Precondition Required とは?
HTTP 428 Precondition Required の解説と、CI/CD やデプロイで目にしたときの意味について。
HTTP 428 は、更新の喪失を防ぐために、サーバーがリクエストを条件付きにすることを要求していることを意味します。
意味するところ
428 は、同時に行われる編集が互いを暗黙的に上書きしないよう、クライアントに If-Match(ETag)ヘッダーの送信を強制します。
CI/CD で目にする場面
リソースを更新する CI スクリプトは、現在の ETag を含めるまで 428 を受け取ることがあります。リソースを取得し、その ETag を読み取り、If-Match で送信してください。
重要なポイント
- 428 は条件付きリクエストが必須であることを意味します。
- ETag を付けて If-Match を送信してください。
- 更新の喪失を防ぎます。