リソースはロックされています。
使いどころ
WebDAV、または他の人が編集中のレコード。
よくある原因と対処法
423 は WebDAV に由来し、ファイルやコレクションがロックされていることを示します。たいていは別のクライアントがそれに対して LOCK を保持しています。Nextcloud や SharePoint、WebDAV 共有から開いた Office 文書で遭遇し、クラッシュしたクライアントがロックを残したままになっていることがよくあります。ロックにはタイムアウトがあり、いずれ期限切れになります。Nextcloud では、データベースまたは Redis に保存された古いロックを管理者が解除できます。
WebDAV 以外では、他の人が編集中のレコードや、ログインの失敗が多すぎてロックされたアカウントに 423 を使う API もあります。汎用的なクライアントはこのコードをよく知らないので、わかりやすいメッセージと、可能であればロックの残り時間を示す Retry-After を含めてください。編集の競合には 409 が、ログインのロックアウトには 429 や 403 のほうが広く理解されています。
クライアントエラー (4xx)
4xx はクライアントエラーです。リクエスト自体が誤っている、認証されていない、または存在しないものを指しています。同じリクエストを再試行しても解決しません。
レスポンスでの表示
HTTP/1.1 423 Locked返し方
| Node.js / Express | res.status(423).end() |
|---|---|
| Python / Flask | return '', 423 |
| nginx | return 423; |
確認方法
curl -s -o /dev/null -w "%{http_code}\n" https://example.com/