2. Happy Status Coding for Firefox OS @ym405nm
ステータスコードって?
ブラウザ サーバ
リクエスト
レスポンス
GET / HTTP/1.1
Host: www.yahoo.co.jp
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:23.0) Gecko/20100101 Firefox/23.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: ja,en-us;q=0.7,en;q=0.3
Accept-Encoding: gzip, deflate
HTTP/1.1 200 OK
Date: Wed, 21 Aug 2013 14:56:09 GMT
UNRi PUBi IND PHY ONL UNI PUR FIN COM NAV INT DEM CNT STA
POL HEA PRE GOV"
Vary: User-Agent,Accept-Encoding
Expires: -1
Pragma: no-cache
Cache-Control: private, no-cache, no-store, must-revalidate
ステータス
コード
3. Happy Status Coding for Firefox OS @ym405nm
主なステータスコード
200 OK
404 NOT FOUND
正常にリクエストとレスポンスが行われる
存在しないリソースに対してリクエストが行われた
4. Happy Status Coding for Firefox OS @ym405nm
問題 ∼基本編∼
403 Forbidden
アクセスが禁止されている
500 Internal Server Error
サーバ内部にてエラーが発生している
503 Service Unavailable
サーバが一時的負荷などで使用不可
302 Found
リクエストしたページが一時的に移動している
6. Happy Status Coding for Firefox OS @ym405nm
問題 ∼マニアック編∼
101 Switching Protocols
プロトコルを切り替える
204 No Content
レスポンスボディが存在しない
405 Method Not Allowed
メソッドが許可されていない
507 Insufficient Storage
リクエストを処理する容量が確保できない(WebDAV)
7. Happy Status Coding for Firefox OS @ym405nm
こんなステータスコードは嫌だ
3xx Bourbon House
バーボンハウスに転送する(釣りサイト)
4xx Rea-juu Denied
リア充からのアクセス禁止
5xx Fire Project
案件が炎上していますので、このエラーはなかったことに
してくれませんか
#こんなステータスコードは嫌だ
8. Happy Status Coding for Firefox OS @ym405nm
Firefox OS での動き
Firefox OS の標準ブラウザに
マイナー(※主観)な
ステータスコードを入れたらどう
なるか?
9. Happy Status Coding for Firefox OS @ym405nm
その1 101 Switching Protocols
•白い画面が表示される
10. Happy Status Coding for Firefox OS @ym405nm
その2 204 No Content
•ページ遷移はせずそのま
ま前のページが表示され
たままになる
11. Happy Status Coding for Firefox OS @ym405nm
その3 408 Request Timeout
•エラー画面が表示される
•リクエストを繰り返し
送っている
•レスポンス内容は読まれ
ない?
12. Happy Status Coding for Firefox OS @ym405nm
まとめ
•レスポンスコードは仕様に従って、ちゃんと
したものを返しましょう
•用途と異なったレスポンスコードを返すとレ
スポンスボディを読んでくれない場合もあり
ます
13. Happy Status Coding for Firefox OS @ym405nm
参考文献
[1] RFC 2616 Hypertext Transfer Protocol -- HTTP/1.1
http://www.ietf.org/rfc/rfc2616.txt
[2] Defense by numbers: Making Problems for Script Kiddies and Scanner Monkeys
by Chris John Riley on Aug 05, 2013
http://www.slideshare.net/ChrisJohnRiley/chris-johnriley-defensebynumbersdc21