momotech_blog

HTTP レスポンスとは

HTTP レスポンス

✅ HTTP レスポンスヘッダとは?

📦 サーバー → ブラウザ に返す “メタ情報”

HTTP レスポンスヘッダは、サーバーがブラウザに送る「追加の情報(メタデータ)」のことです。


✅ 実際のイメージ

たとえば、あるページにアクセスすると…


HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8
Set-Cookie: name=Hattori; path=/
Cache-Control: no-cache

これは ヘッダ情報(上)+ 中身(HTML など)(下) という構造です。


✅ よく使うレスポンスヘッダたち

ヘッダ名意味・使いどころ
Content-Typeブラウザに「どんなデータか」を伝える(例: HTML, JSON, 画像)
Set-Cookieブラウザにクッキーを保存させる(ログイン情報など)
Cache-Controlキャッシュの制御(常に最新にする、保存するなど)
Locationリダイレクト先の URL を指定する(ステータスコード 302 と一緒に使う)
Access-Control-Allow-OriginCORS(他サイトからのアクセス許可)に使う
Content-Dispositionファイルダウンロードとして扱うかどうかの指定

✅ 実際のコードとのつながり(Next.js / Express)


// Next.js API Route
res.setHeader('Content-Type', 'application/json')
res.setHeader('Set-Cookie', serialize('token', 'abc123'))
res.status(200).json({ message: 'OK' })

これは:


✅ ヘッダの役割まとめ


✅ 覚えておくと便利なポイント

✅ HTTP レスポンスのボディとは?

📦 サーバーからブラウザへ返す “中身(データそのもの)” のこと


✅ ヘッダーとボディの違いをまず確認!


▼ ヘッダー部分(メタ情報)
HTTP/1.1 200 OK
Content-Type: application/json

▼ ボディ部分(中身)
{ "message": "ログイン成功", "token": "abc123" }


✅ 実際のコードでのボディの扱い(Next.js / Express)

Next.js API Route での例:


res.status(200).json({ message: 'ログイン成功', token: 'abc123' });

この json() の引数が レスポンスボディ になります!


Express の例:


res.send('<h1>Hello</h1>'); // HTMLを返す

// または JSON
res.json({ message: 'OK' });

どちらも res.send()res.json() の中が ボディ にあたります。


✅ ボディの形式はいろいろ

レスポンスボディの内容は、Content-Type によって変わります。

Content-Typeボディの形式
text/htmlHTML 文
application/jsonJSON(オブジェクト)
text/plainプレーンテキスト
image/png など画像ファイル

✅ ブラウザでの確認方法

  1. ブラウザの DevTools(F12)
  2. 「Network」タブで任意のリクエストを選択
  3. 「Response」タブを見ると、それが ボディの中身

✅ まとめ

👤プロフィール


プロフィールアイコン

青木 日菜子

2024年10月に転職し、フロントエンドエンジニアとして React/Next.js を用いたモダンな Web 開発に従事。 現在はバックエンドにも視野を広げ、SQL の学習を継続中。

趣味は「おうちカフェ」。コーヒーメーカーで淹れたカフェオレを片手に、読書やテレビ鑑賞を楽しむ時間が至福。