Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

20171005 告白に学ぶ http status code

4,433 views

Published on

2017/10/05 PHPカンファレンス2017での発表資料

Published in: Internet
  • Be the first to comment

20171005 告白に学ぶ http status code

  1. 1. 告白に学ぶ HTTP Status Code - エラー編 - 2017/10/05 PHPカンファレンス2017 @takapyyy
  2. 2. ※多分最後まで いかないので
  3. 3. 人材募集してます! デザイナ/エンジニア @東京 @名古屋 @大阪
  4. 4. ※多分最後まで いかないので
  5. 5. ● REST APIで真価を発揮!適切に使い分けよう! ● 扱う側の扱いやすさを考えよう! ● 伝えきれないことはメッセージに含めよう! まとめ
  6. 6. HTTP Status Code HTTPにおいてWebサーバからのレスポンスの意味 を表現する3桁の数字からなるコードで、RFC 2616、 RFC 7231等によって定められている。 参考:https://ja.wikipedia.org/wiki/HTTPステータス コード
  7. 7. HTTP Status Code HTTPにおいてWebサーバからのレスポンスの意味 を表現する3桁の数字からなるコードで、RFC 2616、 RFC 7231等によって定められている。 参考:https://ja.wikipedia.org/wiki/HTTPステータス コード
  8. 8. Laravelでいうところのこれ Route::get('home', function () { return response('Hello World', 200) ->header('Content-Type', 'text/plain'); });
  9. 9. Laravelでいうところのこれ Route::get('home', function () { return response('Hello World', 200) ->header('Content-Type', 'text/plain'); });
  10. 10. ざっくり 1xx Information リクエストは受け取られ た。 処理は継続される。 2xx Success リクエストは受け取られ、 理解され、受理された。 3xx Redirection リクエストを完了させる ために、追加的な処理が 必要。 4xx Client Error クライアントからのリク エストに誤りがあった。 5xx Server Error サーバがリクエストの処 理に失敗した。
  11. 11. ざっくり 1xx Information リクエストは受け取られ た。 処理は継続される。 2xx Success リクエストは受け取られ、 理解され、受理された。 3xx Redirection リクエストを完了させる ために、追加的な処理が 必要。 4xx Client Error クライアントからのリク エストに誤りがあった。 5xx Server Error サーバがリクエストの処 理に失敗した。
  12. 12. こんないっぱい 覚えられないよ... そんなあなたに!
  13. 13. はい!お願いします///あっ、あの! 付き合って下さい!
  14. 14. サーバークライアント
  15. 15. はい!お願いします/// OKです!あっ、あの! 付き合って下さい! OKの例
  16. 16. OKです! Response はい!お願いします/// Request あっ、あの! 付き合って下さい! OKの例
  17. 17. ※多分最後まで いかないので
  18. 18. おもんないやつは とばします
  19. 19. 1xx Information
  20. 20. 継続。 クライアントはリクエストを継続できる。サーバが リクエストの最初の部分を受け取り、まだ拒否して いないことを示す。 100 Continue
  21. 21. 話があるんだけ ど! 100 Continue ほほう、それでそ れで?
  22. 22. 2xx Success
  23. 23. 200 OK OK。 リクエストは成功し、レスポンスとともに要求に応 じた情報が返される。
  24. 24. はい! お願いします/// 付き合って下さ い! 200 OK
  25. 25. 3xx Redirection
  26. 26. 300 Multiple Choices 複数の選択。 リクエストしたリソースが複数存在し、ユーザやユ ーザーエージェントに選択肢を提示するときに返さ れる。
  27. 27. 佐藤さん2人いる んだよね どっち? 佐藤さん付き合っ て下さい! 300 Multiple Choices
  28. 28. こっから 本編!
  29. 29. 4xx Client Error
  30. 30. こっちが悪い
  31. 31. 400 Bad Request リクエストが不正である。 定義されていないメソッドを使うなど、クライアン トのリクエストがおかしい場合に返される。
  32. 32. ごめんなさい ちゃんと目をみて 告白してくれなき ゃイヤ! 付き合って下さ い! 400 Bad Request
  33. 33. 401 Unauthorized 認証が必要である。 Basic認証やDigest認証などを行うときに使用される。
  34. 34. おまえに娘はやら ん! 娘さんを下さい! 401 Unauthorized
  35. 35. 402 Payment Required 支払いが必要である。 現在は実装されておらず、将来のために予約されて いるとされる。
  36. 36. この壷買ってくれ る?♡ 付き合って下さ い! 402 Payment Required
  37. 37. 403 Forbidden 禁止されている。 リソースにアクセスすることを拒否された。リクエ ストはしたが処理できないという意味。アクセス権 がない場合や、ホストがアクセス禁止処分を受けた 場合などに返される。
  38. 38. 娘とは接近禁止じゃ! 二度とくんじゃねえ! 娘さんに会わせて 下さい! 403 Forbidden
  39. 39. 404 Not Found 未検出。 リソースが見つからなかった。 単に、アクセス権がない場合などにも使用される。
  40. 40. ...おかけになった電話番号は 現在使われておりません... もしもし、俺やけ ど 最近げんき? 404 Not Found
  41. 41. 405 Method Not Allowed 許可されていないメソッド。 許可されていないメソッドを使用しようとした。 例えば、POSTメソッドの使用が許されていない場 所で、POSTメソッドを使用した場合に返される。
  42. 42. (そういうのは直 接会っていってほ しいな)、っと (ポチポチ (付き合って下さ い!)、っと(ポ チポチ 405 Method Not Allowed
  43. 43. 406 Not Acceptable 受理できない。 Accept関連のヘッダに受理できない内容が含まれて いる場合に返される。
  44. 44. 私はあなたに似合 う人じゃないわ。。 付き合って下さ い! 406 Not Acceptable
  45. 45. 407 Proxy Authentication Required プロキシ認証が必要である。 プロキシの認証が必要な場合に返される。
  46. 46. ごめんなさい 先にけいこちゃん に聞いてからにし て>< 付き合って下さ い! 407 Proxy Authentication Required ❤ ❤ 友
  47. 47. 408 Request Timeout リクエストタイムアウト。 リクエストが時間以内に完了していない場合に返さ れる。
  48. 48. はよいえ ....付き合 408 Request Timeout
  49. 49. 409 Conflict 競合。 要求は現在のリソースと競合するので完了できない。
  50. 50. ごめんね。 私、カレシいるん だ... 付き合って下さ い! 409 Conflict
  51. 51. 消滅した。 リソースは恒久的に移動・消滅した。どこに行った かもわからない。 404 Not Foundと似ているが、こちらは二度と復活 しない場合に使われる。 410 Gone
  52. 52. (あの子はも う...) 付き合って下さ い! 410 Gone
  53. 53. 前提条件で失敗した。 前提条件が偽だった場合に返される。 412 Precondition Failed
  54. 54. 私、年上好きって いったぢゃん。。 おねえさん! 付き合って下さい! 412 Precondition Failed
  55. 55. ペイロードが大きすぎる。 リクエストエンティティがサーバの許容範囲を超え ている場合に返す。 例:アップローダの上限を超えたデータを送信しよ うとした。 413 Payload Too Large
  56. 56. なげえ ... 413 Payload Too Large 突然呼び出してごめんね。 今日いい天気だよね。あ っ、こんなことがいいた いんじゃなくて、ここ数 日けいこのこと考えたら 寝れなく日々が続いちゃ ってさwこんなん言われ てもきもいよねwでもそ れくらい俺がけいこのこ と考えてるのはわかって ほしい。かわいいし優し いしいつも笑顔で俺は癒 やされててずっと一緒に いたいなって思っちゃっ て...。毎日気づいたら目
  57. 57. 私はティーポット。 エイプリルフールネタ。 418 I’m a tea pot.
  58. 58. 私はティーポット なのよ コーヒーいれても 良い? 418 I’m a teapot
  59. 59. PSR-8 Mutually Assured Hug Mutually Assured Hug (相互高信頼性ハグ) この標準は、オブジェクトが互いの感謝と支持を表 明するための、一般的な方法を確立します。 これでオブジェクトは、建設的な方法で互いをサポ ートすることができ、異なるPHPプロジェクト間の 協力を促進します。 https://qiita.com/tanakahisateru/items/3f24014a91744c2b04fe
  60. 60. PSR-8 Mutually Assured Hug
  61. 61. 法的理由により利用不可。 403 Forbiddenから派生したステータスコード。 451 Unavailable For Legal Reasons
  62. 62. 法律はまだそこま でいってないんで すよ Hey!! Siri!! 付き合って下さ い! 451 Unavailable For Legal Reasons
  63. 63. 5xx Server Error
  64. 64. こっちが悪い
  65. 65. サーバ内部エラー。 サーバ内部にエラーが発生した場合に返される。 例として、CGIとして動作させているプログラムに 文法エラーがあったり、設定に誤りがあった場合な どに返される。 500 Internal Server Error
  66. 66. ごめん、ちょっと 今体調悪くて... 付き合って下さ い! 500 Internal Server Error
  67. 67. 不正なゲートウェイ。 ゲートウェイ・プロキシサーバは不正な要求を受け 取り、これを拒否した。 502 Bad Gateway
  68. 68. けいこちゃん? もういないわよ...? けいこさん!付き 合って下さい! 502 Bad Gateway Proxyみたいなやつ
  69. 69. サービス利用不可。 サービスが一時的に過負荷やメンテナンスで使用不 可能である。例として、アクセスが殺到して処理不 能に陥った場合に返される。 503 Service Unavailable
  70. 70. アッ...アッ...ツキアッテクダサイ!! ツキアッテクダサイ!! ツキアッテクダサイ!! ツキアッテクダサイ!! 503 Service Unavailable
  71. 71. ゲートウェイタイムアウト。 ゲートウェイ・プロキシサーバはURIから推測され るサーバからの適切なレスポンスがなくタイムアウ トした。 504 Gateway Timeout
  72. 72. けいこちゃんから 返事がないわ。ご めんなさい けいこさん! 付き合って下さ い! 504 Gateway Timeout < おっおねg... Proxyみたいなやつ
  73. 73. 懇親会で お会いしましょう!!

×