[ステータスコード 種類] とりあえず400番台と500番台は覚えよう
ステータスコードとはWebの処理結果の概要を把握するものです。1xx〜5xxが存在します。以下でステータスコードの種類についてひとつづつ見ていきます。これらはWebAPIを設計するときにも非常に重要です。
1xx:情報
- 100 Conitune : サーバがリクエストの最初の部分を受け取り、まだサーバから拒否されていないことを示す。
- 101 Switching Protocol : プロトコルの切り替え要求を示す。
2xx : 成功
- 200 OK:リクエストが成功したことを示す。本文にデータが含まれる。
- 201 Created:リクエストが成功し、新しいリソースが作成されたことを示す。ヘッダーのLocationに新リソースへのURLを含める。
- 202 Accepted:非同期ジョブを受け付けたことを示す。実際の処理結果は別途受け取る。
- 204 No Content:リクエストは成功したが、レスポンス’データがないことを示す。クライアント側のビューを変更する必要がないことを意味する。
3xx:リダイレクト
- 301 Moved Permanently : リクエストされたリソースが永久に変更されたことを示す。レスポンスヘッダーにLocationを設定する。
- 302 Found:リクエストされたリソースが一時的に変更されたことを示す。レスポンスヘッダーにLocationを設定する。
- 303 See Other:リクエストされたリソースを取得するため、別のURLにGETリクエストでアクセスできることを示す。
- 308 Permanent Redirect : リクエストされたリソースが永久に変更されたことを示す。リダイレクト時はリクエストと同じメソッドを利用する。
- 307 Temporary Redirect:リクエストされたリソースが一時的に変更されたことを示す。リダイレクト時はリクエストと同じメソッドを利用する。
- 304 Not Modified:前回リクエスト時から変更がないことを示す。レスポンスボディは空になる。
4xx:クライアントサイドエラー
- 400 Bad Request:その他のエラー。
- 401 Unauthorized:認証されていないことを示す。
- 403 Forbidden:リソースに対するアクセスが許可されていない(認可されていない)
注意)403コードが返るということは、少なくともリソースが存在しているということはユーザにわかります。ここが404との大きな違いです - 404 Not Found :リクエストされたリソースが存在しないことを示す。
- 409 Conflict :リソースが競合して処理が完了できなかったことを示す。
- 429 Too Many Request:アクセス回数が制限回数(レートリミット)を超えたため処理ができなかったことを示す。
5xx:サーバーサイドエラー
- 500 Internal Server Error:サーバサイドのアプリケーションエラーが発生したことを示す。
- 503 Service Unavailable:サービスが一時的に利用できないことを示す。メンテナンス期間や過負荷で応答できないようなケース。
ではでは