totonoe

ネットワークを整える

中級

HTTPメソッド・ヘッダーを整える

= GET/POSTなどの動詞と、主要ヘッダーの意味を引く早見

Webの土台であるHTTPの「中身」をひと目で引けるリファレンスです。GET と POST はどう違うのか、PUT を2回送っても安全なのか(冪等性)、Authorization や Set-Cookie は何をするヘッダーなのか──メソッド一覧表と検索できるヘッダー辞典で確かめられます。鍵マークのしくみは /tls/、運び方は /tcp/ に分けています。

i

TLDR — 30秒で分かる

HTTPのメソッド(GET/POSTの違い・冪等性)と主要ヘッダー(Host・Cookie・Cache-Control・CSP…)を、表と検索で引けるリファレンス。鍵マークは [/tls/](/tls/)、運び方は [/tcp/](/tcp/)。

主な機能を見る
  • GET/POST/PUT/PATCH/DELETE/HEAD/OPTIONS の意味・安全・冪等・ボディ有無を比較
  • リクエスト/レスポンスの主要ヘッダーを1行説明+実例で収録
  • ヘッダー名・キーワード検索+種別フィルタ
  • HTTPメッセージの4部構造(開始行/ヘッダ/空行/ボディ)を図解
  • 送信ゼロ・解説のみ・ブラウザ内完結
アニメで見る — HTTPメッセージの中身 ▶ 再生で1ステップずつ動きます
🌐

ブラウザ

あなた

GET /http/ HTTP/1.1(リクエストライン)
Host / Accept / Cookie …(ヘッダー)
🖥️

サーバ

Webサイト

HTTP/1.1 200 OK(ステータスライン)
Content-Type / Cache-Control …
📄 本文(HTML・JSON など)

STEP 1

※ イメージ図です。下の表とリファレンスで、メソッド・ヘッダーの意味を確かめられます。

① HTTPメソッド(7種) 解説のみ・送信ゼロ

メソッド=サーバに「何をしてほしいか」を伝える動詞です。読み取るだけで状態を変えないものを安全(safe)、同じ要求を何回送っても結果が変わらないものを冪等(idempotent)と呼びます。

メソッド 意味 安全 冪等 ボディ 主な用途
GET リソースを取得する(読むだけ) × ページ・画像・APIデータの取得。検索条件はクエリ文字列に載せる。
POST データを送って新規作成・処理を依頼する × × フォーム送信・新規登録・ログイン。2回送ると二重登録になり得る。
PUT リソースを丸ごと置き換える(無ければ作成) × リソース全体の上書き更新。同じPUTを何回送っても最終状態は同じ。
PATCH リソースの一部だけを更新する × × 部分更新(例:名前だけ変える)。差分の当て方次第で冪等にならない。
DELETE リソースを削除する × × リソースの削除。すでに無くても「無い状態」で同じなので冪等。
HEAD GETと同じだが本文を返さずヘッダーだけ取得する × 更新日時やサイズ・存在確認。本文をダウンロードせず確かめたいとき。
OPTIONS 使えるメソッドや通信の許可条件を問い合わせる × CORSのプリフライト(事前確認)。Allow/Access-Control-* が返る。

○=該当/×=非該当。安全なメソッド(GET・HEAD・OPTIONS)は必ず冪等でもあります。POST と PATCH は冪等が保証されないため、二重送信に注意します。ステータスコード(200・404 など)の意味は別ページを参照してください。

② 主要ヘッダー(24個) 入力すると即時に絞り込み(送信ゼロ)

ヘッダー=メッセージに添える「付箋」です。誰に・何を・どう扱うかを補足します。リクエスト系 15・レスポンス系 12(両方で使うものを含む)。名前・説明で絞り込めます。

Host リクエスト

接続先のホスト名。1つのサーバで複数サイトを区別するために必須(HTTP/1.1)。

Host: totonoe.tech
User-Agent リクエスト

リクエスト元のブラウザ・アプリの自己申告。OSやバージョンの目安に使われる。

User-Agent: Mozilla/5.0 (Macintosh; …) Safari/605.1.15
Accept リクエスト

受け取りたいコンテンツの種類(MIMEタイプ)の希望。サーバが内容を出し分ける。

Accept: text/html,application/xhtml+xml,*/*;q=0.8
Accept-Language リクエスト

受け取りたい言語の希望。多言語サイトの言語切り替えに使われる。

Accept-Language: ja,en;q=0.7
Accept-Encoding リクエスト

受け取れる圧縮方式。gzip / br を申告し、本文を縮めて転送量を減らす。

Accept-Encoding: gzip, deflate, br
Authorization リクエスト

認証情報(トークンやBasic認証)。APIアクセスやログイン後の本人確認に使う。

Authorization: Bearer eyJhbGciOiJIUzI1Ni␣…
Cookie リクエスト

以前 Set-Cookie で受け取った値を送り返す。ログイン状態の維持などに使う。

Cookie: session=abc123; theme=light
Content-Type 両方

送る/返す本文の種類(MIMEタイプ)。POST送信時とレスポンス本文の両方で使う。

Content-Type: application/json; charset=utf-8
Content-Length 両方

本文のバイト数。受け手はここまで読めば本文が終わると分かる。

Content-Length: 348
Referer リクエスト

どのページから来たかの参照元URL(綴りは歴史的に Referrer ではなく Referer)。

Referer: https://totonoe.tech/tools/
Origin リクエスト

リクエストの出どころ(スキーム+ホスト+ポート)。CORSやCSRF対策の判定に使う。

Origin: https://totonoe.tech
Range リクエスト

本文の一部だけを要求する(バイト範囲)。ダウンロードの再開や動画のシークに使う。

Range: bytes=0-1023
If-None-Match リクエスト

手元のETagを添えて「変わっていなければ本文不要」と伝える。一致なら304が返る。

If-None-Match: "abc123etag"
If-Modified-Since リクエスト

この日時以降に更新されていなければ本文不要、と伝える条件付きリクエスト。

If-Modified-Since: Wed, 21 Oct 2026 07:28:00 GMT
Set-Cookie レスポンス

ブラウザにCookieを保存させる。次回以降は Cookie ヘッダーで送り返される。

Set-Cookie: session=abc123; HttpOnly; Secure; SameSite=Lax
Cache-Control 両方

キャッシュの可否と期間を指示。max-age・no-store・private などを組み合わせる。

Cache-Control: public, max-age=3600
ETag レスポンス

リソースの版を表す指紋。次回 If-None-Match で送ると未変更なら304で済む。

ETag: "abc123etag"
Last-Modified レスポンス

リソースの最終更新日時。If-Modified-Since と組んでキャッシュ判定に使う。

Last-Modified: Wed, 21 Oct 2026 07:28:00 GMT
Location レスポンス

リダイレクト先や新規作成されたリソースのURL。3xxや201と一緒に返る。

Location: https://totonoe.tech/http/
Content-Encoding レスポンス

本文に実際に適用された圧縮方式。受け手はこれを見て展開する。

Content-Encoding: gzip
Access-Control-Allow-Origin レスポンス

別オリジンからのアクセスを許す相手を指定(CORS)。* なら全許可。

Access-Control-Allow-Origin: https://totonoe.tech
Strict-Transport-Security レスポンス

以後この期間は必ずHTTPSで来いとブラウザに指示(HSTS)。盗聴・改ざん対策。

Strict-Transport-Security: max-age=31536000; includeSubDomains
Content-Security-Policy レスポンス

読み込み元を制限してXSSなどを抑える防御ヘッダー(CSP)。送信先も縛れる。

Content-Security-Policy: default-src 'self'
Vary レスポンス

どのリクエストヘッダーで内容が変わるかを示し、キャッシュの取り違えを防ぐ。

Vary: Accept-Encoding
③ HTTPメッセージの構造 上=リクエスト/下=レスポンス

HTTPメッセージは、いつも同じ4つの並びでできています──①開始行(リクエストラインまたはステータスライン)/②ヘッダー(1行ずつ)/③空行(ここでヘッダーが終わる合図)/④ボディ(本文・無いこともある)。

📨 リクエスト(ブラウザ → サーバ)
① リクエストライン
GET /http/ HTTP/1.1
② ヘッダー
Host: totonoe.tech
Accept: text/html
Cookie: session=abc123
③ 空行(ヘッダー終わりの合図)
④ ボディ
(GETは通常なし)
📄 レスポンス(サーバ → ブラウザ)
① ステータスライン
HTTP/1.1 200 OK
② ヘッダー
Content-Type: text/html; charset=utf-8
Content-Length: 348
Cache-Control: max-age=3600
③ 空行(ヘッダー終わりの合図)
④ ボディ
<!DOCTYPE html><html>…</html>

🔒 このページは解説リファレンスです。入力した検索語もどこにも送られず、すべてあなたのブラウザの中で処理されます(送信ゼロ)。
暗号化(鍵マーク)のしくみは /tls/、データの運び方(TCP/UDP)は /tcp/ をどうぞ。

よくある質問

Q. GET と POST の違いは何ですか?
A. GETは読むだけ(安全・冪等、条件はURLのクエリ)。POSTはデータを送って新規作成・処理を依頼するもので、安全でも冪等でもなく、2回送ると二重登録になり得ます。
Q. 「冪等(idempotent)」とは何ですか?
A. 同じ要求を何回送っても結果(最終状態)が変わらない性質です。GET・PUT・DELETE・HEAD・OPTIONSは冪等、POST・PATCHは保証されません。
Q. PUT と PATCH はどう使い分けますか?
A. PUTはリソースを丸ごと置き換え(冪等)、PATCHは一部だけ更新(差分の当て方次第で非冪等)です。
Q. Cookie と Set-Cookie の関係は?
A. サーバがレスポンスのSet-Cookieでブラウザに保存させ、次回以降ブラウザがリクエストのCookieで送り返します。これでログイン状態などを維持します。
Q. ETag や Cache-Control は何のためですか?
A. 再ダウンロードを減らすためのキャッシュ制御です。ETag(版の指紋)をIf-None-Matchで送り、未変更なら304 Not Modifiedで本文を省けます。
Q. 入力したヘッダー検索語はどこかに送信されますか?
A. いいえ。検索・絞り込みはすべてブラウザ内で完結し、サーバには一切送信されません(送信ゼロ)。

入力値はURLの「#」以降に入るためサーバーには送信されません。リンクを開くと同じ状態を復元します。

RELATED TOOLS

続けて整える

KOINOBORI ECOSYSTEM

私たちが運営するサイト