SlideShare a Scribd company logo
Happy Status Coding
For Firefox OS
Yoshinori Matsumoto
2013/08/31
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
ステータス
コード
Happy Status Coding for Firefox OS @ym405nm
主なステータスコード
200 OK
404 NOT FOUND
正常にリクエストとレスポンスが行われる
存在しないリソースに対してリクエストが行われた
Happy Status Coding for Firefox OS @ym405nm
問題 ∼基本編∼
403 Forbidden
アクセスが禁止されている
500 Internal Server Error
サーバ内部にてエラーが発生している
503 Service Unavailable
サーバが一時的負荷などで使用不可
302 Found
リクエストしたページが一時的に移動している
Happy Status Coding for Firefox OS @ym405nm
主なステータスコード
1xx : 情報提供
2xx : 成功 (200など)
3xx : リダイレクト (301, 302など)
4xx : クライアントエラー (401, 404など)
5xx : サーバエラー (500, 503など)
RFC 2616により
HTTP ステータスコードは
決められている
Happy Status Coding for Firefox OS @ym405nm
問題 ∼マニアック編∼
101 Switching Protocols
プロトコルを切り替える
204 No Content
レスポンスボディが存在しない
405 Method Not Allowed
メソッドが許可されていない
507 Insufficient Storage
リクエストを処理する容量が確保できない(WebDAV)
Happy Status Coding for Firefox OS @ym405nm
こんなステータスコードは嫌だ
3xx Bourbon House
バーボンハウスに転送する(釣りサイト)
4xx Rea-juu Denied
リア充からのアクセス禁止
5xx Fire Project
案件が炎上していますので、このエラーはなかったことに
してくれませんか
#こんなステータスコードは嫌だ
Happy Status Coding for Firefox OS @ym405nm
Firefox OS での動き
Firefox OS の標準ブラウザに
マイナー(※主観)な
ステータスコードを入れたらどう
なるか?
Happy Status Coding for Firefox OS @ym405nm
その1 101 Switching Protocols
•白い画面が表示される
Happy Status Coding for Firefox OS @ym405nm
その2 204 No Content
•ページ遷移はせずそのま
ま前のページが表示され
たままになる
Happy Status Coding for Firefox OS @ym405nm
その3 408 Request Timeout
•エラー画面が表示される
•リクエストを繰り返し
送っている
•レスポンス内容は読まれ
ない?
Happy Status Coding for Firefox OS @ym405nm
まとめ
•レスポンスコードは仕様に従って、ちゃんと
したものを返しましょう
•用途と異なったレスポンスコードを返すとレ
スポンスボディを読んでくれない場合もあり
ます
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

More Related Content

What's hot

opencoconの作り方 (オープンソースカンファレンス2015 Tokyo/Spring 小江戸らぐセミナー)
opencoconの作り方 (オープンソースカンファレンス2015 Tokyo/Spring 小江戸らぐセミナー)opencoconの作り方 (オープンソースカンファレンス2015 Tokyo/Spring 小江戸らぐセミナー)
opencoconの作り方 (オープンソースカンファレンス2015 Tokyo/Spring 小江戸らぐセミナー)
shimadah
 
Gentoo Linuxの紹介
Gentoo Linuxの紹介Gentoo Linuxの紹介
帰ってきた凄い謎マシン (ARMのDevice Tree話, 2015年6月 東海道らぐ浜松)
帰ってきた凄い謎マシン (ARMのDevice Tree話, 2015年6月 東海道らぐ浜松)帰ってきた凄い謎マシン (ARMのDevice Tree話, 2015年6月 東海道らぐ浜松)
帰ってきた凄い謎マシン (ARMのDevice Tree話, 2015年6月 東海道らぐ浜松)
shimadah
 
謎PCとの付き合い方(LILO東海道 2015/5発表分)
謎PCとの付き合い方(LILO東海道 2015/5発表分)謎PCとの付き合い方(LILO東海道 2015/5発表分)
謎PCとの付き合い方(LILO東海道 2015/5発表分)
shimadah
 
FreeBSD jail+vnetと戯れた話
FreeBSD jail+vnetと戯れた話FreeBSD jail+vnetと戯れた話
FreeBSD jail+vnetと戯れた話
Masaru Oki
 
ほんとはこわくない Gentoo Linux
ほんとはこわくない Gentoo Linuxほんとはこわくない Gentoo Linux
ほんとはこわくない Gentoo Linux
gion_XY
 
EC2でkeepalived+LVS(DSR)
EC2でkeepalived+LVS(DSR)EC2でkeepalived+LVS(DSR)
EC2でkeepalived+LVS(DSR)Sugawara Genki
 
Prefixから始めるgentoo生活
Prefixから始めるgentoo生活Prefixから始めるgentoo生活
Prefixから始めるgentoo生活
bontakun
 
魁ここんとーく in おおさか
魁ここんとーく in おおさか魁ここんとーく in おおさか
魁ここんとーく in おおさか
shimadah
 
Bossan dentoo
Bossan dentooBossan dentoo
Bossan dentookubo39
 
野良ビルドから見たGentoo
野良ビルドから見たGentoo野良ビルドから見たGentoo
野良ビルドから見たGentooNaohiro Aota
 
20161203 Gentoo勉強会
20161203 Gentoo勉強会20161203 Gentoo勉強会
20161203 Gentoo勉強会
alice ferrazzi
 
俺のGentooがこんなに可愛いわけがない
俺のGentooがこんなに可愛いわけがない俺のGentooがこんなに可愛いわけがない
俺のGentooがこんなに可愛いわけがないTakuto Matsuu
 
TUI作業で便利なソフト2題
TUI作業で便利なソフト2題TUI作業で便利なソフト2題
TUI作業で便利なソフト2題
shimadah
 
Lets talk about ubuntu from now (Japanese only)
Lets talk about ubuntu from now (Japanese only)Lets talk about ubuntu from now (Japanese only)
Lets talk about ubuntu from now (Japanese only)
Hidetsugu Takahashi
 
オレのUbuntuノートPCセットアップ 2016-12-17
オレのUbuntuノートPCセットアップ 2016-12-17オレのUbuntuノートPCセットアップ 2016-12-17
オレのUbuntuノートPCセットアップ 2016-12-17
Nobuto Murata
 
ちょっと古いマシンにLinuxを
ちょっと古いマシンにLinuxをちょっと古いマシンにLinuxを
ちょっと古いマシンにLinuxを
Kenichiro MATOHARA
 
勉強会向けサーバを作ってみる2 / Rasbian jessieを試す/ Google Authenticatorのパスコードを作る
勉強会向けサーバを作ってみる2 / Rasbian jessieを試す/ Google Authenticatorのパスコードを作る勉強会向けサーバを作ってみる2 / Rasbian jessieを試す/ Google Authenticatorのパスコードを作る
勉強会向けサーバを作ってみる2 / Rasbian jessieを試す/ Google Authenticatorのパスコードを作る
Kenichiro MATOHARA
 
Nagoya vim #1 about plugins
Nagoya vim #1 about pluginsNagoya vim #1 about plugins
Nagoya vim #1 about pluginssgurrr
 

What's hot (20)

opencoconの作り方 (オープンソースカンファレンス2015 Tokyo/Spring 小江戸らぐセミナー)
opencoconの作り方 (オープンソースカンファレンス2015 Tokyo/Spring 小江戸らぐセミナー)opencoconの作り方 (オープンソースカンファレンス2015 Tokyo/Spring 小江戸らぐセミナー)
opencoconの作り方 (オープンソースカンファレンス2015 Tokyo/Spring 小江戸らぐセミナー)
 
Gentoo Linuxの紹介
Gentoo Linuxの紹介Gentoo Linuxの紹介
Gentoo Linuxの紹介
 
帰ってきた凄い謎マシン (ARMのDevice Tree話, 2015年6月 東海道らぐ浜松)
帰ってきた凄い謎マシン (ARMのDevice Tree話, 2015年6月 東海道らぐ浜松)帰ってきた凄い謎マシン (ARMのDevice Tree話, 2015年6月 東海道らぐ浜松)
帰ってきた凄い謎マシン (ARMのDevice Tree話, 2015年6月 東海道らぐ浜松)
 
謎PCとの付き合い方(LILO東海道 2015/5発表分)
謎PCとの付き合い方(LILO東海道 2015/5発表分)謎PCとの付き合い方(LILO東海道 2015/5発表分)
謎PCとの付き合い方(LILO東海道 2015/5発表分)
 
FreeBSD jail+vnetと戯れた話
FreeBSD jail+vnetと戯れた話FreeBSD jail+vnetと戯れた話
FreeBSD jail+vnetと戯れた話
 
ほんとはこわくない Gentoo Linux
ほんとはこわくない Gentoo Linuxほんとはこわくない Gentoo Linux
ほんとはこわくない Gentoo Linux
 
EC2でkeepalived+LVS(DSR)
EC2でkeepalived+LVS(DSR)EC2でkeepalived+LVS(DSR)
EC2でkeepalived+LVS(DSR)
 
Prefixから始めるgentoo生活
Prefixから始めるgentoo生活Prefixから始めるgentoo生活
Prefixから始めるgentoo生活
 
魁ここんとーく in おおさか
魁ここんとーく in おおさか魁ここんとーく in おおさか
魁ここんとーく in おおさか
 
Bossan dentoo
Bossan dentooBossan dentoo
Bossan dentoo
 
野良ビルドから見たGentoo
野良ビルドから見たGentoo野良ビルドから見たGentoo
野良ビルドから見たGentoo
 
Vsubuntu
VsubuntuVsubuntu
Vsubuntu
 
20161203 Gentoo勉強会
20161203 Gentoo勉強会20161203 Gentoo勉強会
20161203 Gentoo勉強会
 
俺のGentooがこんなに可愛いわけがない
俺のGentooがこんなに可愛いわけがない俺のGentooがこんなに可愛いわけがない
俺のGentooがこんなに可愛いわけがない
 
TUI作業で便利なソフト2題
TUI作業で便利なソフト2題TUI作業で便利なソフト2題
TUI作業で便利なソフト2題
 
Lets talk about ubuntu from now (Japanese only)
Lets talk about ubuntu from now (Japanese only)Lets talk about ubuntu from now (Japanese only)
Lets talk about ubuntu from now (Japanese only)
 
オレのUbuntuノートPCセットアップ 2016-12-17
オレのUbuntuノートPCセットアップ 2016-12-17オレのUbuntuノートPCセットアップ 2016-12-17
オレのUbuntuノートPCセットアップ 2016-12-17
 
ちょっと古いマシンにLinuxを
ちょっと古いマシンにLinuxをちょっと古いマシンにLinuxを
ちょっと古いマシンにLinuxを
 
勉強会向けサーバを作ってみる2 / Rasbian jessieを試す/ Google Authenticatorのパスコードを作る
勉強会向けサーバを作ってみる2 / Rasbian jessieを試す/ Google Authenticatorのパスコードを作る勉強会向けサーバを作ってみる2 / Rasbian jessieを試す/ Google Authenticatorのパスコードを作る
勉強会向けサーバを作ってみる2 / Rasbian jessieを試す/ Google Authenticatorのパスコードを作る
 
Nagoya vim #1 about plugins
Nagoya vim #1 about pluginsNagoya vim #1 about plugins
Nagoya vim #1 about plugins
 

Similar to Happy status Coding

はじめてのUser-Agent文字列
はじめてのUser-Agent文字列はじめてのUser-Agent文字列
はじめてのUser-Agent文字列
Kenta USAMI
 
CDNの仕組み(JANOG36)
CDNの仕組み(JANOG36)CDNの仕組み(JANOG36)
CDNの仕組み(JANOG36)
J-Stream Inc.
 
Firefox OS - Blaze Your Own Path
Firefox OS - Blaze Your Own PathFirefox OS - Blaze Your Own Path
Firefox OS - Blaze Your Own Pathdynamis
 
HTTP2入門
HTTP2入門HTTP2入門
HTTP2入門
Sota Sugiura
 
loggregator update
loggregator updateloggregator update
loggregator update
Ken Ojiri
 
HTTP入門
HTTP入門HTTP入門
HTTP入門
Sho A
 
配布用Cacti running with cherokee
配布用Cacti running with cherokee配布用Cacti running with cherokee
配布用Cacti running with cherokee
yut148atgmaildotcom
 
ストリーミングのげんざい
ストリーミングのげんざいストリーミングのげんざい
ストリーミングのげんざい
Tetsuya Morimoto
 
サンドボックス化によるセキュアなプログラミング
サンドボックス化によるセキュアなプログラミングサンドボックス化によるセキュアなプログラミング
サンドボックス化によるセキュアなプログラミング
Yikei Lu
 
Windows Server+Photon Server環境でも Fluentd+Elasticsearch+Kibanaを活用して 各種情報を可視化する...
Windows Server+Photon Server環境でもFluentd+Elasticsearch+Kibanaを活用して各種情報を可視化する...Windows Server+Photon Server環境でもFluentd+Elasticsearch+Kibanaを活用して各種情報を可視化する...
Windows Server+Photon Server環境でも Fluentd+Elasticsearch+Kibanaを活用して 各種情報を可視化する...
GMO GlobalSign Holdings K.K.
 
WebSocket Protocol と Plack::Middleware::WebSocket
WebSocket Protocol と Plack::Middleware::WebSocketWebSocket Protocol と Plack::Middleware::WebSocket
WebSocket Protocol と Plack::Middleware::WebSocket
Yu Nobuoka
 
Firefox OS Updates 201311
Firefox OS Updates 201311Firefox OS Updates 201311
Firefox OS Updates 201311
dynamis
 

Similar to Happy status Coding (12)

はじめてのUser-Agent文字列
はじめてのUser-Agent文字列はじめてのUser-Agent文字列
はじめてのUser-Agent文字列
 
CDNの仕組み(JANOG36)
CDNの仕組み(JANOG36)CDNの仕組み(JANOG36)
CDNの仕組み(JANOG36)
 
Firefox OS - Blaze Your Own Path
Firefox OS - Blaze Your Own PathFirefox OS - Blaze Your Own Path
Firefox OS - Blaze Your Own Path
 
HTTP2入門
HTTP2入門HTTP2入門
HTTP2入門
 
loggregator update
loggregator updateloggregator update
loggregator update
 
HTTP入門
HTTP入門HTTP入門
HTTP入門
 
配布用Cacti running with cherokee
配布用Cacti running with cherokee配布用Cacti running with cherokee
配布用Cacti running with cherokee
 
ストリーミングのげんざい
ストリーミングのげんざいストリーミングのげんざい
ストリーミングのげんざい
 
サンドボックス化によるセキュアなプログラミング
サンドボックス化によるセキュアなプログラミングサンドボックス化によるセキュアなプログラミング
サンドボックス化によるセキュアなプログラミング
 
Windows Server+Photon Server環境でも Fluentd+Elasticsearch+Kibanaを活用して 各種情報を可視化する...
Windows Server+Photon Server環境でもFluentd+Elasticsearch+Kibanaを活用して各種情報を可視化する...Windows Server+Photon Server環境でもFluentd+Elasticsearch+Kibanaを活用して各種情報を可視化する...
Windows Server+Photon Server環境でも Fluentd+Elasticsearch+Kibanaを活用して 各種情報を可視化する...
 
WebSocket Protocol と Plack::Middleware::WebSocket
WebSocket Protocol と Plack::Middleware::WebSocketWebSocket Protocol と Plack::Middleware::WebSocket
WebSocket Protocol と Plack::Middleware::WebSocket
 
Firefox OS Updates 201311
Firefox OS Updates 201311Firefox OS Updates 201311
Firefox OS Updates 201311
 

More from yoshinori matsumoto

はじめてのマーケットプレイス
はじめてのマーケットプレイスはじめてのマーケットプレイス
はじめてのマーケットプレイス
yoshinori matsumoto
 
WordPressセキュリティの 心配事を吹き飛ばせ! WordCamp Kansai 2016
WordPressセキュリティの心配事を吹き飛ばせ! WordCamp Kansai 2016WordPressセキュリティの心配事を吹き飛ばせ! WordCamp Kansai 2016
WordPressセキュリティの 心配事を吹き飛ばせ! WordCamp Kansai 2016
yoshinori matsumoto
 
防御から謝罪まで・・・WordPressにヤマを張るっ!
防御から謝罪まで・・・WordPressにヤマを張るっ!防御から謝罪まで・・・WordPressにヤマを張るっ!
防御から謝罪まで・・・WordPressにヤマを張るっ!
yoshinori matsumoto
 
攻撃者からみたWordPressセキュリティ
攻撃者からみたWordPressセキュリティ攻撃者からみたWordPressセキュリティ
攻撃者からみたWordPressセキュリティ
yoshinori matsumoto
 
Word press セキュリティ show!!
Word press セキュリティ show!!Word press セキュリティ show!!
Word press セキュリティ show!!yoshinori matsumoto
 
社内合宿成果発表
社内合宿成果発表社内合宿成果発表
社内合宿成果発表
yoshinori matsumoto
 
Android解析勉強会 #2 広告収入モジュール編
Android解析勉強会 #2 広告収入モジュール編Android解析勉強会 #2 広告収入モジュール編
Android解析勉強会 #2 広告収入モジュール編yoshinori matsumoto
 
すぐできるWeb制作時のセキュリティTips
すぐできるWeb制作時のセキュリティTipsすぐできるWeb制作時のセキュリティTips
すぐできるWeb制作時のセキュリティTips
yoshinori matsumoto
 
第1回Androidアプリ解析勉強会XXX解析チーム
第1回Androidアプリ解析勉強会XXX解析チーム第1回Androidアプリ解析勉強会XXX解析チーム
第1回Androidアプリ解析勉強会XXX解析チーム
yoshinori matsumoto
 
この秋何かつくる人のためのセキュリティ事情
この秋何かつくる人のためのセキュリティ事情この秋何かつくる人のためのセキュリティ事情
この秋何かつくる人のためのセキュリティ事情
yoshinori matsumoto
 
イベント管理サイト応用するよ
イベント管理サイト応用するよイベント管理サイト応用するよ
イベント管理サイト応用するよ
yoshinori matsumoto
 
OSSで地域貢献 - 加古川起源説 -
OSSで地域貢献 - 加古川起源説 -OSSで地域貢献 - 加古川起源説 -
OSSで地域貢献 - 加古川起源説 -
yoshinori matsumoto
 
これからHTML5を書く人のためのセキュリティ - HTML5など勉強会
これからHTML5を書く人のためのセキュリティ - HTML5など勉強会これからHTML5を書く人のためのセキュリティ - HTML5など勉強会
これからHTML5を書く人のためのセキュリティ - HTML5など勉強会
yoshinori matsumoto
 
セキュリティビジュアライゼーション - LT Spiral #04
セキュリティビジュアライゼーション - LT Spiral #04セキュリティビジュアライゼーション - LT Spiral #04
セキュリティビジュアライゼーション - LT Spiral #04
yoshinori matsumoto
 
ペアプロしてきた
ペアプロしてきたペアプロしてきた
ペアプロしてきた
yoshinori matsumoto
 
SECCON つくば ハッカソン発表
SECCON つくば ハッカソン発表SECCON つくば ハッカソン発表
SECCON つくば ハッカソン発表
yoshinori matsumoto
 
社内勉強会 20120518
社内勉強会 20120518社内勉強会 20120518
社内勉強会 20120518
yoshinori matsumoto
 
春のチキチキjQuery祭り - 姫路IT系勉強会
春のチキチキjQuery祭り - 姫路IT系勉強会春のチキチキjQuery祭り - 姫路IT系勉強会
春のチキチキjQuery祭り - 姫路IT系勉強会
yoshinori matsumoto
 

More from yoshinori matsumoto (18)

はじめてのマーケットプレイス
はじめてのマーケットプレイスはじめてのマーケットプレイス
はじめてのマーケットプレイス
 
WordPressセキュリティの 心配事を吹き飛ばせ! WordCamp Kansai 2016
WordPressセキュリティの心配事を吹き飛ばせ! WordCamp Kansai 2016WordPressセキュリティの心配事を吹き飛ばせ! WordCamp Kansai 2016
WordPressセキュリティの 心配事を吹き飛ばせ! WordCamp Kansai 2016
 
防御から謝罪まで・・・WordPressにヤマを張るっ!
防御から謝罪まで・・・WordPressにヤマを張るっ!防御から謝罪まで・・・WordPressにヤマを張るっ!
防御から謝罪まで・・・WordPressにヤマを張るっ!
 
攻撃者からみたWordPressセキュリティ
攻撃者からみたWordPressセキュリティ攻撃者からみたWordPressセキュリティ
攻撃者からみたWordPressセキュリティ
 
Word press セキュリティ show!!
Word press セキュリティ show!!Word press セキュリティ show!!
Word press セキュリティ show!!
 
社内合宿成果発表
社内合宿成果発表社内合宿成果発表
社内合宿成果発表
 
Android解析勉強会 #2 広告収入モジュール編
Android解析勉強会 #2 広告収入モジュール編Android解析勉強会 #2 広告収入モジュール編
Android解析勉強会 #2 広告収入モジュール編
 
すぐできるWeb制作時のセキュリティTips
すぐできるWeb制作時のセキュリティTipsすぐできるWeb制作時のセキュリティTips
すぐできるWeb制作時のセキュリティTips
 
第1回Androidアプリ解析勉強会XXX解析チーム
第1回Androidアプリ解析勉強会XXX解析チーム第1回Androidアプリ解析勉強会XXX解析チーム
第1回Androidアプリ解析勉強会XXX解析チーム
 
この秋何かつくる人のためのセキュリティ事情
この秋何かつくる人のためのセキュリティ事情この秋何かつくる人のためのセキュリティ事情
この秋何かつくる人のためのセキュリティ事情
 
イベント管理サイト応用するよ
イベント管理サイト応用するよイベント管理サイト応用するよ
イベント管理サイト応用するよ
 
OSSで地域貢献 - 加古川起源説 -
OSSで地域貢献 - 加古川起源説 -OSSで地域貢献 - 加古川起源説 -
OSSで地域貢献 - 加古川起源説 -
 
これからHTML5を書く人のためのセキュリティ - HTML5など勉強会
これからHTML5を書く人のためのセキュリティ - HTML5など勉強会これからHTML5を書く人のためのセキュリティ - HTML5など勉強会
これからHTML5を書く人のためのセキュリティ - HTML5など勉強会
 
セキュリティビジュアライゼーション - LT Spiral #04
セキュリティビジュアライゼーション - LT Spiral #04セキュリティビジュアライゼーション - LT Spiral #04
セキュリティビジュアライゼーション - LT Spiral #04
 
ペアプロしてきた
ペアプロしてきたペアプロしてきた
ペアプロしてきた
 
SECCON つくば ハッカソン発表
SECCON つくば ハッカソン発表SECCON つくば ハッカソン発表
SECCON つくば ハッカソン発表
 
社内勉強会 20120518
社内勉強会 20120518社内勉強会 20120518
社内勉強会 20120518
 
春のチキチキjQuery祭り - 姫路IT系勉強会
春のチキチキjQuery祭り - 姫路IT系勉強会春のチキチキjQuery祭り - 姫路IT系勉強会
春のチキチキjQuery祭り - 姫路IT系勉強会
 

Recently uploaded

ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobodyロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
azuma satoshi
 
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMMハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
osamut
 
Generating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language ModelsGenerating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language Models
harmonylab
 
Humanoid Virtual Athletics Challenge2024 技術講習会 スライド
Humanoid Virtual Athletics Challenge2024 技術講習会 スライドHumanoid Virtual Athletics Challenge2024 技術講習会 スライド
Humanoid Virtual Athletics Challenge2024 技術講習会 スライド
tazaki1
 
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
Osaka University
 
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
嶋 是一 (Yoshikazu SHIMA)
 
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
Toru Tamaki
 

Recently uploaded (7)

ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobodyロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
 
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMMハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
 
Generating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language ModelsGenerating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language Models
 
Humanoid Virtual Athletics Challenge2024 技術講習会 スライド
Humanoid Virtual Athletics Challenge2024 技術講習会 スライドHumanoid Virtual Athletics Challenge2024 技術講習会 スライド
Humanoid Virtual Athletics Challenge2024 技術講習会 スライド
 
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
 
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
 
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
 

Happy status Coding

  • 1. Happy Status Coding For Firefox OS Yoshinori Matsumoto 2013/08/31
  • 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 リクエストしたページが一時的に移動している
  • 5. Happy Status Coding for Firefox OS @ym405nm 主なステータスコード 1xx : 情報提供 2xx : 成功 (200など) 3xx : リダイレクト (301, 302など) 4xx : クライアントエラー (401, 404など) 5xx : サーバエラー (500, 503など) RFC 2616により HTTP ステータスコードは 決められている
  • 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