http

3695 ワード

HTTP (HyperText Transfer Protocol)


これは、インターネット上でデータを交換できるテキストベースの通信プロトコルです.このようにルールが定められ、すべてのプログラムがこのルールに従って開発され、情報を交換することができます.

HTTP操作


クライアント、すなわち、ユーザがurlまたは他の方法でサービスを要求すると、サーバはその要求に一致する結果を検索し、応答(response)の形でユーザを操作する.
クライアント->サーバリクエスト
▼▼▼▼応答:server->client
HTMLドキュメントのみがHTTP通信のための唯一の情報ドキュメントではありません.
また、Plain TextからJSONデータやXMLなどの情報を入手することもできます.通常、お客様は、HTML形式で受信したい情報、JSON形式で受信したい情報を示す機会があります.

HTTP特性


HTTPメッセージは、HTTPサーバとHTTPクライアントによって解析されます.
⚍▼TCP/IPアプリケーションプロトコル.
(コンピュータとコンピュータとの間でデータを伝送し、インターネットという膨大な通信網を通じて必要な情報(データ)を提供するための応用プロトコル.)
𘊐HTTPは接続状態を保持しない非接続プロトコルである.
△これらの欠点を解決するために、CookieとSessionが現れた.
HTTPは接続を保持しないプロトコルであるため、要求/応答で動作する.

HTTP例


▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼\9660
▼▼クライアント:この資料にアクセスできるプログラム
Ex)Webブラウザ、携帯アプリなど…
クライアントプログラムでは,ユーザが会員登録を試みるとサーバに会員情報が送信され,サーバはユーザに会員情報を保存する.この過程で,クライアントとサーバ間のコミュニケーションはHTTPプロトコルを用いて行われる.

リクエスト


クライアント連絡サーバはリクエストと呼ばれ、リクエストを送信するとリクエストの情報がサーバに送信されます.

リクエストの例


サーバは、クライアントに必要なものを理解するために注文を受信できます.このような要求はホテルに注文書を記入するようなものです.

リクエストメソッド(リクエストのタイプ)


GET:要求資料用


POST:リソースの作成を要求する


PUT:データ修正要求用


DELETE:データ削除要求用


要求HTTPメッセージ例

GET https://velog.io/@surim014 HTTP/1.1								// 시작줄
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) ...			  // 헤더
> Upgrade-Insecure-Requests: 1

1.開始行(最初の行)


最初の行は、メソッド構造のバージョンからなる開始行です.
⚫️GET : HTTP Method
⚍:サイトアドレス
HTTP/1.1:HTTPバージョン

2.タイトル(2行目から)


2行目からタイトルで、リクエストに関する情報が含まれています.User-Agent、Upgrade-Insecure-Requestsなどはいずれもヘッダに対応しており、ヘッダの種類は非常に多い.

3.本文(タイトルに1行置き)


この文書には、リクエスト時に一緒に送信されるデータが含まれています.現在の例では、要求はアドレスにのみ送信され、データは単独で送信されないため、本明細書は空です.

おうとう


サーバは、要求に対する応答をクライアントに送信することを応答と呼ぶ.

Statusコード


ステータスコードにはいろいろあります.3桁の数字で構成され、大きく5種類に分けられ、以下に示す.
⚍XX(条件応答):要求を受け取り、仕事を続ける.
𘊐XX(成功):クライアントが要求を受信し、理解し、受け入れた操作を指し、処理に成功した.
⚨▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼\
𘊐4 XX(要求エラー):クライアントにエラーがあることを示します.
⚄▼5 XX(サーバエラー):サーバが有効な要求を明確に実行していないことを示します.
Resonse HTTP 메시지 예시
HTTP/1.1 200 OK														// 시작줄
Connection: keep-alive												 // 헤더
Content-Encoding: gzip												 
Content-Length: 35653
Content-Type: text/html;

<!DOCTYPE html><html lang="ko" data-reactroot=""><head><title...

1.開始行(最初の行)


最初の行は、バージョンステータスコードステータスメッセージから構成されます.200は、これが成功したリクエストであることを意味します.

2.タイトル(2行目から)


2行目から、応答に関する情報をタイトルで含めます.

3.本文(タイトル後)


ほとんどの場合、応答には本文があります.一般的にデータが要求されるため、返信情報には要求されたデータが含まれます.応答メッセージにはHTMLが含まれており、ブラウザはこのHTMLを受信して画面に表示します.

コメントサイト


VanillaCoding
zerocho - HTTP
wikipedia - HTTP state code
toma0912 - HTTP
roydest - HTTP