どうも、つよぽんです!
今回は、「HTTPステータスコード」を解説します。
今回の記事の内容は以下の解説記事でも使っているスライドの内容をさらに詳しく解説したものとなります。
今回の記事は次のような方に向けて書きました。
- HTTPステータスコードって何?
- HTTPステータスコードの種類が多すぎて覚えられない
この記事を読み終えた後のあなたは次のことがわかるようになっています。
- HTTPステータスコードが何かわかる
- HTTPステータスコードの覚え方がわかる
HTTPステータスコードが何かについては後ほど詳しく解説しますが、HTTPステータスコードを細かく覚えようとすると全部を覚えるのは大変です。
WikipediaでHTTPステータスコードの種類を確認すると、全部で60種類以上書かれています。(2019年2月1日 現在)
しかし、HTTPステータスコードとは大きく分類すると5つに分けられて、さらにWebサービスを開発する上でよく見かけるのは5つのうち3つになるので、まずはこの3つの種類を覚えれば良いです。
まず最初に覚えると良い3つについては後ほど説明していきます。
それでは以下の内容で話を進めていきます。
- HTTPステータスコードとは
- まず覚えると良いHTTPステータスコードのカテゴリ3つ
目次
HTTPステータスコードとは
HTTPステータスコードとは「HTTP通信を行った結果を表した3桁の数字」です。
これだけだと意味がわからないと思うので、具体例をつかって解説します。
クライアントとサーバーのデータのやり取りの裏側
WebサービスやアプリでもTwitterを使う際には、「クライアント」と「サーバー」の間ではデータのやり取りを行うため通信が行われています。
このときの通信手段として「HTTP通信」が使われており、前回記事の「Web開発でよく使う4つのHTTPメソッド【REST API】」で説明した「GET」「POST」「PUT」「DELETE」といったHTTPメソッドが使われます。
例えば、クライアントがサーバーからWebページの表示に必要なHTMLや画像ファイルなどを取得するのは、「HTTPのGETメソッド」を使って、データのやり取りを行っています。
通信が成功・失敗などを3桁の数字で表したのがHTTPステータスコード
クライアントとサーバーのデータのやり取り(=通信)は成功するときもあれば、失敗するときもあります。
通信の成功・失敗の例は次のようなものがあります。
- データの取得がうまくいった(成功①)
- データの送信がうまくいった(成功②)
- 存在しないファイルを取得しようとした(失敗①)
- インターネット回線の問題でうまく接続できなかった(失敗②)
- 存在しないファイルに対してリクエストを投げた(失敗③)
- サーバーに問題があってうまく接続できなかった(失敗④)
上記に挙げたのは通信結果の一例です。上記の例を見ると分かる通り、成功・失敗といってもいろいろな種類があることがわかります。
HTTPステータスコードでは、これらの成功・失敗を細かく分類するのに利用されるのです。
それでは次の章で、どんなHTTPステータスコードの種類について説明していきます。
まず覚えると良いHTTPステータスコードのカテゴリ3つ
HTTPステータスコードは大きく分けると以下の5つに分類されます。
- 100系 : 情報
- 200系 : 成功
- 300系 : リダイレクション
- 400系 : クライアントエラー
- 500系 : サーバーエラー
そして、上記3つのうちでもまずは覚えておくと良いのは、太字・色付で書いた「200系」「400系」「500系」の3つのなります。
なぜ、この3つをまずは覚えておくとよいかというと、サービス開発を行うときによく見ることになるHTTPステータスコードだからです。
この3つのざっくりした覚え方もシンプルです。
200系の覚え方 : 成功
「200系」つまり「200」「204」など2から始める3桁の数字の場合は、「通信の成功」をあらわします。
400系の覚え方 : クライアント原因の失敗
「400系」つまり「403」「404」など4から始める3桁の数字の場合は、「クライアントが原因の通信の失敗」をあらわします。
クライアントが原因の失敗というのは次のようなものがあります。
- 存在しないデータを取得しようとした
- ログインが必要なサービスなのに、ログインせずにサービスを利用しようとした
500系の覚え方 : サーバー原因の失敗
「500系」つまり「500」「503」など5から始める3桁の数字の場合は、「サーバーが原因の通信の失敗」をあらわします。
サーバーが原因の失敗というのは次のようなものがあります。
- サーバーサイドのプログラムでバグがあって、処理が途中で止まってしまった
- サーバーにアクセスが一時的に集中して、サーバーが負荷に耐えられなくなってしまった
まとめ
今回の話をまとめると次のとおりです。
- HTTPステータスコードとは、通信の成功・失敗を細かく表現した3桁の数字
- HTTPステータスコードのうち、まずは「200系」「400系」「500系」の3つを覚えると良い
今回の内容は以下の記事内のスライドの補足資料として作成しました。スライドの全部を確認したい方は以下の記事も参照して頂けたらと思います。
- Web白熱教室
- その他
- Wikipedia : HTTPステータスコード