HTTP


HTTP


HTTPはHyper Text転送プロトコルの略であり、コンピュータ間でHTMLファイルを交換することを許可するコミュニケーション方法または約束である.

✔HTTPの2つの特性



1. Request / Response


HTTPには送信主体(リクエスト側)と受信主体(響応側)が存在し,これは交換可能なコミュニケーション方式への承諾である.

2. Stateless


その名の通り、stateという意味はありません.どういう意味だ!!!
HTTPで通信を行うと,以前に送信された要求や要求に含まれていたデータを覚えていないことを意味する.
したがって、HTTPを使用して通信する場合は、応答を受信するために必要なデータを記録し続け、要求を発行する必要があります.

🍖 リクエスト/レスポンスを開く


=> Request


リクエストは、Start Line、Headers、Bodyの3つの部分で構成されています.

StartLine


Start Lineも3つの部分から構成されています.
  • HTTPメソッド:requestが期待するアクション.POST、GET、DELETEなど.
  • Request Target:要求されたターゲットurl
  • HTTPバージョン:使用するHTTPバージョン.主に1.1に使用され、他のバージョンの2位にも使用されます.
  • Headers


    要求された追加情報(メタデータなど)を含む部分で、key:value値からなる.
    Headers: {
       Host: 요청 목표타겟의 주소
       User-Agent: 요청을 보내는 클라이언트의 정보
       Content-Type: 해당 요청이 보내고 있는 메세지 body의 타입
       Content-Length: body내용의 길이
       Authorization: 회원 인증, 인가 등을 처리하기 위한 토큰이 담기는 위치.
    }

    Body


    この要求の実際の内容としては、通常、POST方式でbodyが用いられる.

    => Response


    応答はリクエストと同様にStatus Line,Headers,Bodyの3つの部分から構成される.

    Status Line


    応答のステータスラインとして、要求された処理ステータスをクライアントに通知します.
  • HTTPバージョン:要求されたHTTPバージョンと同じ
  • Status Code:応答状態コード
  • Status Text:応答メッセージの状態を簡単に説明するメッセージ
  • HTTP/1.1 404 NOT FOUND

    Headers


    リクエストのタイトルと同じです.回答を含む追加情報(メタデータ).応答でのみ使用されるヘッダの情報が含まれます.
    (ユーザエージェントの代わりにサーバヘッダ)

    Body


    要求された本文と一般的に同じです.答えの形によっては、体があるかもしれないし、体がないかもしれない.最も一般的なボディタイプはJSONです.

    🔑 Response Status Codes

  • 200 OK
    最も一般的なコードは、バックエンドサーバ上の応答コード
  • 201 Create
    通常、POSTメソッドの要求に従って、データが正常に生成されたかどうかを確認することができる.
  • 400 Bad Request
    このリクエストが無効な場合に送信されます.
  • 401 Unauthorized*
    これは、このリクエストを行うには、ユーザーが先にログインまたは会員に加入する必要があることを意味します.
  • 403 Forbidden
    ユーザーに要求する権限がないことを意味します.アクセスできません.
  • 404 Not Found
    要求されたURIは存在しない
  • 500 Internal Server Error
    サーバに障害が発生した場合.