リクエスト/レスポンス
中級読み方:リクエストレスポンス|英語:Request Response
ブラウザがサーバーに送る要求がリクエスト、サーバーが返す応答がレスポンスで、Web通信の基本だよ。いつ使う? Webページを表示するとき、APIからデータを取得するとき、フォームを送信するとき、常にリクエスト/レスポンスのやり取りが行われているよ。間違いやすいポイント: 1つのページ表示で何十ものリクエストが発生するよ(HTML、CSS、JS、画像それぞれ)。開発者ツールのNetworkタブで全てのリクエストを確認できるよ。
やさしい説明
リクエストとレスポンスは、ブラウザとサーバーの「会話」です。ブラウザが「このページをください」と頼み(リクエスト)、サーバーが「はいどうぞ」と返します(レスポンス)。
Webページを見るとき、裏側では何十回もこの会話が行われています。HTML、CSS、画像、JSファイルそれぞれに対してリクエスト/レスポンスが発生します。
開発者ツールの Network タブで、すべてのリクエスト/レスポンスを確認できます。
具体例・使い方
# リクエスト(ブラウザ → サーバー)
GET /index.html HTTP/1.1
Host: example.com
Accept: text/html
# レスポンス(サーバー → ブラウザ)
HTTP/1.1 200 OK
Content-Type: text/html
<html>...</html> いつ使う?
fetch でAPIにアクセスするとき、フォームを送信するとき、ページを表示するとき——Webを使うときは常にリクエスト/レスポンスが発生しています。
間違いやすいポイント
❌ レスポンスのContent-Typeを確認しない
APIのレスポンスがJSONだと思ったらHTMLだった——ということがあります。res.headers の Content-Type を確認しましょう。
よくある疑問
Q: リクエストの中身は?
A: URL、HTTPメソッド(GET等)、ヘッダー(認証情報等)、ボディ(送信データ)で構成されます。
Q: レスポンスの中身は?
A: ステータスコード(200等)、ヘッダー(Content-Type等)、ボディ(HTML/JSON等のデータ)で構成されます。
Q: リクエストヘッダーとは?
A: リクエストに付加する情報です。Content-Type(データ形式)、Authorization(認証トークン)、Cookie などが代表的です。