初学者用の内容です。
前提としてWebページを開く際の流れでの説明になります。
別途追記/修正する可能性があります。
HTTPとは
HTTP(Hypertext Transfer Protocol)
WEBページにアクセスする際、URLの頭についているhttp
HTTPとは、プロトコルの一種で、クライアントとサーバーがやりとりする際にメッセージの内容や手順を定めたものです。
プロトコル
通信動作のルール
言語に置き換えると、日本語というプロトコルを使用して、相手が英語というプロトコルの処理しかできない場合、会話が成り立たない。このような事が通信で起きないようにルールが設定されている。
クライアント(自分)が、WEBページのサーバーから表示する際に必要な情報をリクエストしたりします。
そのリクエストメッセージの中には
"何を" "どうして欲しいか"という情報が記載されています。
"何を"
URI(Uniform Resource Identifier)
WEBページを開きたい場合は、読み込みたいページのデータが入ったファイル名もしくはURLをURIとして設定できます。
つまり、URIとはアクセス先の総称。
このURIが何をに該当します。
"どうして欲しいか"
どうして欲しいかとはURIに対してどうして欲しいかということです。
それを伝えるためにメソッドを使用します。
メソッドには様々な種類がありますが、Webページの表示の際はURIで指定した情報を要求する為にGETメソッドを使用します。
会員制のWEBページの場合、IDやパスワードを入力した際はPOSTメソッドを使用し、WEBページのサーバーに入力情報を送信したりします。
"何を" "どうして欲しいか"が決まったら
URIとメソッドが決まったら、ブラウザはそれを元にHTTPリクエストメッセージを作成します。
※Webページを開いて開発ツールを見るとリクエストメッセージの内容を確認できます。
メッセージリクエストを作成したら、メッセージリクエストをWebサーバーに送信し、WEBサーバーからのレスポンスを受け取ります。
レスポンスメッセージには通信が正常に終了したのかエラーが発生したのかを判断するステータスコードが含まれています。
| コード値 | 説明 |
|---|---|
| 1xx | 処理の経過状況 |
| 2xx | 正常 |
| 3xx | 別のアクションが必要 |
| 4xx | クライアント(自分)側のエラー |
| 5xx | サーバー側のエラー |
ちなみに、一つのリクエストメッセージには複数URIを設定できないので、リクエストを送ったページに画像が含まれていた場合は画像を取得するよう再度通信を行います。
このように、リクエストとレスポンスをブラウザとWEBサーバーで通信するために使用するプロトコルがHTTPです。
以上、ざっくり説明してみました。
今度はもっと自分の言葉で説明できるようにまた何か書こうと思います。