HTML+JavaScriptでこれから始める、REST APIを利用したアプリ開発
第4回目/HTTPレスポンスとステータスコード
2020年3月4日 TEXT:ニック
REST API を利用したアプリを開発する上で、APIとの通信状況を把握することは大事です。その手がかりとなるのがHTTPレスポンス、そしてステータスコードです。
今回は、HTTPレスポンスとステータスコードについて解説します。
REST APIとやりとりする時には、ブラウザ・Webアプリから「HTTPリクエスト」を送ります。APIは、リクエストに応じる形でデータを返します。返ってきたデータを「HTTPレスポンス」と呼びます。
HTTPレスポンスには、大きく分けて3つの要素が含まれます。
- 1.ステータス行
- 2.ヘッダー
- 3.本文
ステータス行
ステータス行には、プロトコルバージョン、ステータスコード、ステータス文字列が含まれます。このステータス行を見ることで、サーバーとの通信状況がわかります。
ヘッダー
ヘッダーには、レスポンスデータに関する情報や、コンテンツの長さや MIME タイプなど、エンティティの本文に関する詳細情報などが含まれます。
本文
本文は、リクエストに応じたデータが含まれます。Webサイトの場合は、Webページを表示するためのHTML。JSONデータを返却するREST APIの場合は、JSONデータそのものが含まれます。
今回は、REST API を利用した開発によく使われるツール「Postman」をご紹介します。
Postman は、サンフランシスコに本社を置く「Postman」社が開発するAPI開発のためのツールソフトです。テストの自動化やチーム開発など、チーム単位から巨大な組織向けまで、いくつかのライセンスを販売しています。
Postmanには個人開発者向けの「free」版があります。個人開発者は無料でダウンロードでき、Postmanを利用してシンプルなリクエスト送信やレスポンスデータの確認などを行うことができます。
HTTPレスポンスに含まれるステータスコードを確認することで、サーバーとの通信状況がどうなっているかを診断することができます。REST APIを利用したアプリの開発時には、ステータスコードを見ながらデバッグすることが多くなります。
ステータスコードは、Web APIを利用する上で必須と言える情報です。これまで意識していなかった方は、是非この機会に詳しく学習することをお薦めします。
ここでは、主なステータスコードを紹介します。
200番代 - 成功レスポンス
200番代のステータスコードは、通信が成功していることを表します。200番代には以下のようなコードが存在します。
- ・200 OK
- ・204 No Content
400番代 - エラー
400番代はエラーメッセージです。
- ・400 Bad Request
- ・401 Unauthorized
- ・403 Forbidden
- ・429 Too Many Requests
500番代 - サーバーエラー
500番代は、サーバーサイドのエラーコードとなります。
- ・503 Service Unavailable
- ・HTTPレスポンスは、Web APIと通信したときにサーバーから送られてくるデータである
- ・HTTPレスポンスには、「ステータス行」「ヘッダー 」「本文」の3種類のデータ含まれている
- ・HTTPステータスは、APIとの通信状態を確認するために不可欠な情報である
freeeと開発者が共同で運営しているユーザーコミュニティ「freee Open Guild」では会員を募集しています。不定期に開催しており、freee、API、そのほかの技術領域について勉強会を開催しています。
https://freee-platform.connpass.com/
登録は無料ですので、ぜひご登録ください!
ニック(Takeshi Nick Osanai)
早稲田大学卒業後、株式会社アスキーでゲーム事業に従事。シックス・アパート株式会社でプロダクトマネージャー、ディベロッパーリレーションを担当後、2019年freeeへ入社。 AWS認定ソリューションアーキテクト(SAA)