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

 

投稿者プロフィール

林 晃
林 晃アプリ開発者
アールケー開発代表。Appleプラットフォーム向けのアプリ開発が好きなアプリ開発者。アプリの受託開発、技術書執筆、技術指導・セミナー講師。3DCGコンテンツ作成にも取組中です。

基礎から学ぶARKit


「基礎から学ぶARKit」を執筆しました。本書はARKitを使ったARアプリの開発方法を解説した技術書です。

ARKitを使ってARアプリを作るときの流れや基本的なAPIの使い方などをサンプルアプリを作りながら学べます。

詳細

基礎から学ぶMetal


「基礎から学ぶMetal」を執筆しました。本書はMetalを使ってGPUプログラミングを行うための最初のステップを解説するMetalの解説書です。

私が初めてGPUプログラミングを行ったとき、どこから手をつけて、学んでいけば良いのか分からず呆然としました。もし、あのとき、これを教えてくれればという部分を解説しました。本書で解説している部分はMetalの基礎となる部分で、Metalを使うときに必ず触れることになる部分です。

詳細

関連記事

  1. iOS 13.4でWKWebViewがクラッシュするときはWebKit…

  2. SwiftとObjective-Cを共存させるならObjective-…

  3. OpenCVのセットアップ方法 (macOSアプリ用)

  4. OpenCVのセットアップ方法(iOSアプリ用)

  5. Apple Notarization Service に対応するための…

  6. M1 Mac でのドライバの読み込み判断フロー

最近の著書

  1. 基礎から学ぶ SwiftUI

最近の記事