質問するログイン新規登録

回答編集履歴

1

全体的に修正

2018/12/21 02:19

投稿

miyabi-sun
miyabi-sun

スコア21524

answer CHANGED
@@ -1,18 +1,23 @@
1
1
  ステータスコードはWebの仕様書、RFC(英語)に記載されています。
2
- とはいえ、英語のページをベタッと貼り付けてもなんだかなーという感じなので、
3
- Wikipediaの[HTTPステータスコード](https://ja.wikipedia.org/wiki/HTTP%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9%E3%82%B3%E3%83%BC%E3%83%89)を読むと良いでしょう。
2
+ Wikipediaの[HTTPステータスコード](https://ja.wikipedia.org/wiki/HTTP%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9%E3%82%B3%E3%83%BC%E3%83%89)日本語で解説された文章があるのでそれを読むと良いでしょう。
4
3
 
5
4
  例えば普通にWebサイトにアクセスしてWebページが表示されますが、
6
5
  裏でブラウザが沢山のHTML、CSS、JS、画像ファイルへアクセスして、接続成功の200番を貰っています。
7
- この様成功失敗で使われるステータスコードは全世界共通ですが、下記のようルールありますので覚えておくと良いでしょう
6
+ 存在しないURLを叩けば404番帰ってきますしフォーム不正値を入力すれば400番帰ってきます。
7
+ 一時的にバズったサービスはリクエストが殺到して負荷に耐えきれず、500番を返すようなこともあります。
8
8
 
9
+ この様に成功失敗で使われるステータスコードは全世界共通であり、
10
+ 特に下記のようなルールがありますので覚えておくと良いでしょう。
11
+
9
- - 100番台: 接続成功したよ(接続しっぱなしのケースで使われ事もあるがレアケース)
12
+ - 100番台: 接続成功したよ(接続を継続させるレアケース)
10
13
  - 200番台: 接続成功したよ、これがデータね
11
- - 300番台: URLが移転しちゃたんだ
14
+ - 300番台: このリクエストでは結果を返せないから、次の支持に従てね(主な用途はリダイレクト)
12
15
  - 400番台: そのリクエスト誤ってない?(クライアント側のミス)
13
16
  - 500番台: ごめんね、処理に失敗したから復旧した後にまたリクエスト投げてね(サーバ側のミス)
14
17
 
15
18
  ところがWikipediaで紹介されている以上の意味はありません。
16
19
  3桁目の数値はすぐに決まるのですが、1桁目の数値は決め辛いケースがあり、サービスによって番号が異なる可能性があります。
20
+ 今回帰ってきた201番というステータスコードはあまり見かけませんね、POST通信成功時であっても200番を返すサーバのが多いように感じます。
17
21
 
22
+ エンジニアがHTPP通信を利用してAPIを使う場合、APIのドキュメントにHTTPステータスコードが記載されていればそれに従えば良いですし、
18
- ユーザとして利用する場合、とりあえず3桁目だけ確認するよう作っおけ大丈夫でしょう。
23
+ そうでないのならば、とりあえず3桁目だけ確認、200番台であれ通信成功と考えて良いでしょう。