HTTPとは何か?Web通信のルールをもう一段深く理解する

あけお

スクールに多額のお金を支払う前に、僕の記事で学習してね!

目次

はじめに

ここまでであなたは、

  • Webページが表示される流れ
  • ブラウザとサーバーの役割

を理解しました。

次に必ず必要になるのが、

HTTPを「ちゃんと理解する」こと

です。

HTTPは、

  • Webの通信ルール
  • APIの共通言語
  • LaravelのRequest / Responseの正体

でもあります。

この記事では、

  • HTTPとは何か(復習+一段深く)
  • HTTPリクエストとレスポンスの中身
  • Webエンジニアがどこまで理解すべきか

を、実務視点で解説します。

HTTPとは何か?(復習

HTTPとは一言でいうと、

ブラウザとサーバーがやり取りするための通信ルール

です。

正式名称は
HyperText Transfer Protocol

重要なのは、

HTTPは「どう通信するか」だけを決めている

という点です。

HTTP通信の基本構造

HTTP通信は必ずこの形です。

クライアント → リクエスト
サーバー     → レスポンス
  • クライアント:ブラウザ、アプリ
  • サーバー:Webサーバー+アプリ

HTTPリクエストとは何か?

HTTPリクエストは、

「この処理をしてください」という依頼

です。

リクエストには
主に次の情報が含まれます。

  • HTTPメソッド
  • URL
  • ヘッダー
  • ボディ(必要な場合)

HTTPメソッドの役割

HTTPメソッドは、

何をしたいかを表す動詞

です。

よく使うHTTPメソッド

メソッド意味主な用途
GET取得ページ表示
POST送信フォーム送信
PUT更新データ更新
PATCH部分更新一部更新
DELETE削除データ削除

Laravelの
Route::get()Route::post()
は、ここから来ています。

URLとクエリパラメータ

GETリクエストでは、
URLに情報を含めることがあります。

例:

/users?id=10
  • id=10 がクエリパラメータ

👉
取得系の情報指定に使われます。

リクエストヘッダーとは?

ヘッダーは、

通信に関する追加情報

です。

例:

  • Content-Type
  • Authorization
  • Cookie

Laravelで
$request->header()
として扱う部分です。

リクエストボディとは?

POSTやPUTでは、
データをボディに含めます。

例:

  • フォームデータ
  • JSON

API通信では
JSON形式が主流です。

HTTPレスポンスとは何か?

レスポンスは、

処理結果の返事

です。

レスポンスにも
次の情報が含まれます。

  • ステータスコード
  • ヘッダー
  • ボディ(HTML / JSONなど)

ステータスコードの考え方

ステータスコードは、

処理結果を番号で表したもの

です。

最低限覚えるもの

コード意味
200成功
301 / 302リダイレクト
400リクエストエラー
401認証エラー
403権限エラー
404見つからない
500サーバーエラー

👉
エラー調査の最初の手がかりです。

HTTPはステートレス

HTTPの重要な特徴です。

HTTPは過去の通信を覚えていない

つまり、

  • 毎回独立した通信
  • 前回の状態は保持しない

という性質があります。

なぜステートレスなのか?

理由は、

  • シンプル
  • スケールしやすい
  • 管理が楽

という
Webに向いた設計だからです。

ステートレスの問題点

このままだと、

  • ログイン状態を維持できない
  • カート情報が消える

といった問題が起きます。

CookieとSessionの役割

そこで登場するのが、

  • Cookie
  • Session

です。

これらは、

HTTPの弱点を補う仕組み

です。

詳細は
次の記事で解説します。

HTTP/1.1とHTTP/2の違い(概要)

HTTPには
バージョンがあります。

  • HTTP/1.1:長年使われてきた
  • HTTP/2:高速化された新方式

HTTP/2では、

  • 通信の効率化
  • 同時処理の改善

が行われています。

👉
初学者は
「改善された」程度でOKです。

Webエンジニアはどこまで理解すればいい?

結論です。

以下が説明できれば十分です。

  • HTTPは通信ルール
  • リクエストとレスポンス
  • メソッドとステータスコード
  • ステートレスという性質

この理解があると、

  • Laravel
  • API
  • フロント通信

が一気につながります。

HTTP理解のメリット

  • エラー原因が読める
  • API仕様書が理解できる
  • フレームワークの動きが見える

👉
「黒箱」が消えます。

次に学ぶべきこと

HTTPを理解したら、
次は👇です。

👉 CookieとSessionとは何か?
ログイン状態はどうやって維持されているのか

まとめ

  • HTTPはWeb通信のルール
  • リクエストとレスポンスが基本
  • ステートレスが特徴
  • CookieとSessionで補完

この記事は
Web基礎章の心臓部です。

あけお

あなたの挑戦を応援しています!!

よかったらシェアしてね!
目次