HTTPのステータスコードへの対応

Webサーバーと通信するクライアントアプリのエラー処理で必ず必要になるのがHTTPのステータスコードです。

色々なコードが定義されていますが、これだけ知っていれば、とりあえずは大丈夫だと思われるものをまとめました。

通信成功

通信が成功したときは200番台です。私が書くアプリで多いのは次のようなところです。

  • 201 : OK

それ以外のはたまたま仕様的に使っていないです。

クライアントエラー

こちら側が悪いときのエラーは400番台です。使うことが多いのは次のようなコードです。

  • 400 : Bad Request
  • 401 : Unauthorized (認証失敗)
  • 403 : Forbidden (許可されていない)
  • 404 : Not Found (ファイルが見つからない)
  • 405 : Method Not Allowed (許可されていないHTTPメソッド)

401や403以外は運用段階になったら少ないと思います。

404はURLが間違っているか、削除されてしまったときです。固定のAPIを使って通信するようなケースでは遭遇しないと思います。ユーザーが指定したURLやユーザーが作成・削除出来るなど、接続先が消えることが予期されるアプリでは運用段階でも遭遇しますね。

405はサーバーとの通信仕様の問題です。そもそも開発中に見つからなければいけない問題です。

サーバー側のエラー

サーバー側が悪いときは500番台です。こちらはメンテナンスで動いていないときなどに遭遇します。サービスが終了してしまった場合もですね。

ステータスコードはどこで定義されている

HTTPで定義されています。詳しい定義はRFC-7231のResponse Status Codeというところに書かれています。

RFC 7231 – Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content | 6. Response Status Codes

 

著書紹介

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

Akira Hayashi (林 晃)のアバター Akira Hayashi (林 晃) Representative(代表), Software Engineer(ソフトウェアエンジニア)

アールケー開発代表。Appleプラットフォーム向けの開発を専門としているソフトウェアエンジニア。ソフトウェアの受託開発、技術書執筆、技術指導・セミナー講師。note, Medium, LinkedIn
-
Representative of RK Kaihatsu. Software Engineer Specializing in Development for the Apple Platform. Specializing in contract software development, technical writing, and serving as a tech workshop lecturer. note, Medium, LinkedIn

目次