HTTPとは?
HTTP(Hypertext Transfer Protocol)
WebサーバとWebブラウザの間で、Web情報をやりとりするためのプロトコル(通信規則)
このHTTPを使ってサーバとクライアント(ユーザ)間でやり取りが行われる。
クライアント(Webブラウザなど)が要求を出して、サーバが応答を返す。
1つの要求(リクエスト)には1つの応答(レスポンス)を返すルール。
以前に何を要求したかで応答が変わることはない。
ある要求に対する応答は常に同じ。
HTTPは幅広く使われている。
・スマホやアプリからのサーバ機能呼び出し
・サーバ間のサービス呼び出し
HTTPはTCPと組み合わせて使う。
UDPと組み合わせるケースは稀である。
サーバがHTTP通信を受けるポート番号は、通常80番ポート。
HTTPプロキシ(高パフォーマンスのコンテンツフィルタなど)で特殊な用途で利用する場合、80番ポート以外を利用する。
HTTPの通信
・TCP/IPでクライアントが送信するリクエスト
・サーバが応答するレスポンス
リクエスト
・ヘッダフィールドやメッセージの各部が存在する。
・行いたい操作をリクエストのメソッドで指定する。
レスポンス
・ステータス行、ヘッダーフィールド、メッセージの各部が存在。
・処理結果はステータスコードで表示される。
HTTPメソッド
GET:指定したターゲットをサーバから取り出す
HEAD:指定したターゲットに関連するヘッダー情報を取り出す
POST:指定したターゲット(プログラム)にデータを送る
PUT:サーバ内のファイルを書き込む
DELETE:サーバ内のファイルを削除する
CONNECT:プロキシサーバ経由で通信を行う
HTTP 200 OK
リクエストが成功した場合に返すレスポンスコード。
200のレスポンスはデフォルトでキャッシュしてよい。
ユーザがWebブラウザでWebサイトを閲覧する流れ
・GETメソッドをサーバに送信する。
・サーバがHTTP 200 OKのステータスコードのレスポンスを返信する。
・WebブラウザにWebページが表示される。
コメント