HTTP情報はHTTPメッセージから!
HTTPメッセージの構成
Http通信で交換される情報は、通常、Httpメッセージと呼ばれる2種類のリクエストメッセージとスポンサーメッセージが存在する
Httpメッセージは복수행
のデータからなるテキスト文字列の形式で、おおよそ메시지 헤더
と메시지 바디
からなり、それぞれ개행 문자(CR+LF)
メッセージヘッダを先頭行とヘッダブロック(フィールド)に分けることができるメッセージヘッダ:サーバとクライアントが処理しなければならない要求または応答の内容と属性を定義するHTTP通信に必要なすべての付加情報がヘッダに記載されているex)メッセージ本体のサイズ、認証、クライアント情報、キャッシュ管理情報等 メッセージ本体:転送中のデータを含むここでは使用可能なすべてのバイトで表されるデータをHTML文書やjson形式のデータから画像やビデオに転送できる
リクエストヘッダの最初のスタートラインは리퀘스트 라인(요청 라인)
からなる要求線(要求線):要求に用いる方法(GET、POST等)、要求URI及び使用するHTTPバージョン情報を指示する GET/search HTTP/1.1
スポンサーヘッダのスタートラインは상태 라인(응답 라인)
で構成されているステータスライン(応答線):リース結果を示すステータスコードと説明、および使用するHTTPバージョン情報、 HTTP/1.1 200 OK
keep-aliveヘッダ:以下に示すように、接続を継続することを示す(HTTP 1.1より動作がデフォルト) Connection:Keep-Alive
Keep-Alive: timeout=5, max=1000
基本的にHTTP通信はTCP通信をベースとしており、TCP通信は一旦伝送されると接続が切断され、HTTPも伝送終了後に接続が切断され、以降のことは気にしないそこでKeep-Aliveヘッダを使用してこれらの問題を阻止し、特定期間内の最大要求数を示す
よく使われるHTTPメソッドとレスポンスコード
HTTPメソッドGET:サーバから特定情報(または文書)を取得するためのものHEAD:GETの類似動作であるが、サーバの応答はタイトルのみであり、本文は存在しないリソースの存在や変更などの情報だけが必要な場合は、本文にはリソースは含まれておらず、ヘッダをチェックするだけで十分ただしサーバの開発に際しては、HEAD要求に応答したヘッダとGET要求に応答したヘッダとの整合性に常に注意すること. POST:サーバが処理する必要があるデータは、通常、サーバに新しいデータを入力するために使用されるメッセージ本体にデータが含まれているため(ex.要求json)、ハッシュメソッドを使用すると本文が現れる PUT:サーバに存在するデータの変更(新規ドキュメント作成または置換要求の本文)同じく本文が存在し、POSTとは異なる멱등성(Idempotence)
乙支路 PATCH:リソースを変更する方法はPUTと同じであるが、一部のリソースのみを変更するPUTでは、一部のリクエストのみを送信すると、残りはデフォルト値に変更されます.未送信のデータがnullに変更される可能性があるため、変更されていないデータも全て転送する必要がある 逆にPATCHはリクエスト本文の一部のみ修正 DELETE:サーバから何らかの情報(または文書)を削除ただしサーバが要求を無視する可能性があるため、クライアントが常に正常に削除することは保証できない
ステータスコード100-19:情報200-299:成功(200 OK)300-399:リダイレクト400-499:クライアントエラー(404ノードFound)500-599:サーバエラー(500内部サーバエラー)