Cookieパーサー
| 名前 | 値 | 操作 |
|---|---|---|
| 上部に貼り付けた後、解析結果を表示 | ||
Netscape ファイルは curl -b で使用;Domain がない場合はプレースホルダーを使用、インポート前に置き換えてください。
ログイン、API、ブラウザのデバッグ時に Cookie request header と Set-Cookie response header の両方を1ページで確認できます。
関連おすすめ
Cookieパーサーとは?
Cookie パーサーは、ブラウザ、フロントエンドコード、API ツール、サーバー応答から得た Cookie テキストを構造化された結果に変換するツールです。理論説明よりも、request が実際に送った Cookie、Set-Cookie に含まれる属性、ブラウザが Cookie を拒否した理由、結果をスクリプトや CLI でどう再利用するかといった実務的な問いに答えることを目的にしています。
document.cookie、Cookie request header、Set-Cookie response header を同じ入力形式だと思い込むのはよくある誤りです。document.cookie と request Cookie はフラットな name=value の集合ですが、Set-Cookie は SameSite、Path、Domain、Expires、Max-Age、HttpOnly、Secure などを含むサーバーからブラウザへの response header です。
このページは、手元の Cookie テキストの種類がまだ分からないときや、request に何が載っていたかと server が何を返したかをまとめて比較したいときの総合入口として使えます。
単純に split(;) するだけのツールと違い、元の値を保持しつつデコード結果を表示し、属性を構造化して見せ、JSON や Netscape Cookie File にも出力でき、重複 Cookie も重要な手がかりとして残します。
request header に特化した流れが必要なら HTTP Cookie Parser、ブラウザが Cookie を拒否した理由や Set-Cookie の属性不備を詳しく見たいなら Set-Cookie Parser を使うとより効率的です。
ユースケース
- DevTools やログから得た document.cookie 文字列を素早く個別の Cookie に分解する
- Network パネルから複数行の Set-Cookie を貼り付けて、ブラウザが Cookie を拒否した理由を確認する
- ログイン状態の消失、cross-site request で送られない Cookie、重複名の衝突を調べる
- URL エンコードされた Cookie 値を読みやすい文字列へ戻して実際の内容を確認する
- 解析結果を JSON にしてスクリプト、issue、ドキュメント、テストケースに貼る
- curl、クローラー、インポート系ツール向けに Netscape Cookie File を生成する
- frontend、QA、ops、crawler のデバッグ時に総合的な Cookie トリアージページとして使う
使い方
- まず source を確認し、document.cookie、request header、log なら Cookie 文字列モード、response header なら Set-Cookie モードを選ぶ
- 生の Cookie テキストを入力欄へ貼り付けると、名前・値・属性が自動で分解される
- URL デコード表示を有効にし、必要なフィールドを絞り込み、重複名の警告や属性一覧を確認する
- 正規化されたテキストをコピーするか、JSON / Netscape Cookie File を出力して次のデバッグ工程へ渡す
特徴
- document.cookie / Cookie request header と複数行 Set-Cookie response header に対応する2モード解析
- 元の値、URL デコード後の値、SameSite / Secure / HttpOnly / Path / Domain / Expires / Max-Age などを含む名前・値・属性の自動分解
- Path の衝突や scope の重なり、セッション不安定化の手がかりになる重複名の警告
- スクリプト、API デバッグ、再現用レポートに使いやすい構造化 JSON 出力
- curl やクローラーツールチェーン向けの Netscape Cookie File 生成
- Session、Token、ログイン Cookie を端末外へ出さないローカル処理
- request 側と response 側の Cookie デバッグを明確に分けられる汎用入口
Cookie 解析ツールはどう選ぶ?
このページは汎用的な入口として便利ですが、入力の種類が分かっているなら専用ツールのほうが速く進められます。
| ツール | 適した入力 | 向いている用途 | 主な強み |
|---|---|---|---|
| Cookieパーサー(このページ) | Cookie 文字列、document.cookie、複数行 Set-Cookie | 入力形式がまだ不明なときや、request 側と response 側を1か所で見たいとき | 2モード切替、JSON / Netscape 出力、実用的な総合デバッグ入口 |
| HTTP Cookie Parser | Cookie request header と document.cookie 形式の文字列 | request が本当に送った Cookie、重複名、URL エンコードの有無を確認したいとき | request 側の name/value 解析により特化HTTP Cookie Parser を開く |
| Set-Cookie Parser | server が返した Set-Cookie response header | ブラウザが Cookie を拒否した理由や SameSite / Secure / HttpOnly の問題を見たいとき | セキュリティ属性やブラウザポリシーの深い確認に向くSet-Cookie Parser を開く |
Best Practices
まず request header か response header かを見分ける
frontend code、document.cookie、request log、curl header 由来なら Cookie 文字列モードから始めてください。Network パネルの Response Headers 由来なら Set-Cookie モードに切り替えます。
HTTP Cookie ParserSet-Cookie Parserデコード結果を見るときも元の値を捨てない
多くの Cookie 値は URL エンコードされています。デバッグ時は元の値とデコード後の値の両方を確認できるようにしておくと安全です。
重複名があるときは先に Path と Domain を確認する
重複 Cookie は Path や Domain の違い、過去の書き込み残りを示していることがあります。自動重複排除は原因を隠すおそれがあります。
次に使う先に合わせて出力形式を選ぶ
ドキュメント、issue、スクリプトに貼るだけなら JSON のほうが分かりやすいことが多いです。curl やクローラー、Cookie ファイルを読むツールに渡すなら Netscape Cookie File を選びます。
curl からコードへよくある質問
この Cookie パーサーはどの入力形式に対応していますか?
document.cookie や Cookie: request header のような name=value; name2=value2 形式のフラットな文字列と、ブラウザの Network パネルからコピーした複数行の Set-Cookie response header の2種類に対応しています。前者は実際に request へ送られた Cookie を確認するのに向いており、後者は SameSite、Secure、HttpOnly、Path、Domain、Expires、Max-Age などの属性確認に向いています。
Cookie request header と Set-Cookie response header の違いは何ですか?
Cookie request header は、ブラウザがサーバーへ送るフラットなキーと値の一覧で、属性情報は含みません。Set-Cookie はサーバーがブラウザへ返す response header で、1行ごとに1つの Cookie 設定を表し、名前と値に加えて Path、Domain、Expires、SameSite、Secure、HttpOnly などを含めることができます。
Cookie の値が文字化けのように見えるのはなぜですか?
多くの Cookie 値は URL エンコードされています。たとえば %3D は =、%2F は / を意味します。このツールは元の値を保持したまま、URL デコード後の値も表示するので、実際の内容を確認しやすくなります。
同じ Cookie 名が重複して表示されるのはなぜですか?
異なる Path、異なる Domain、またはデバッグ中の重複書き込みが原因で、同じ名前の Cookie が複数存在することがあります。こうした重複自体が重要な手がかりになるため、ツールは自動削除せず警告として残します。
JSON 出力と Netscape 出力はどう使い分ければよいですか?
JSON はスクリプト、テストケース、API ドキュメント、ログ分析に向いています。Netscape Cookie File は curl -b のような対応ツールやコマンドラインフローで Cookie を再利用したいときに向いています。
ログイン状態の消失を調べる用途に向いていますか?
はい。まず Cookie モードで request に実際に含まれている Cookie を確認し、その後 Set-Cookie モードで server 側の属性設定に問題がないかを確認できます。
request 側の Cookie だけ見たいのに、この総合パーサーを使う理由はありますか?
document.cookie と Set-Cookie のどちらも扱う可能性があり、1つの入口でまとめて確認したいときに便利です。request Cookie だけなら HTTP Cookie Parser のほうがより特化しています。
ここに貼り付けた Session や Token、ログイン Cookie はサーバーに送信されますか?
いいえ。Cookie の解析、URL デコード、JSON プレビュー、Netscape 形式の生成はすべてブラウザ内でローカル実行されます。
Set-Cookie 内の SameSite、Secure、HttpOnly は自動認識されますか?
はい。各 Set-Cookie 行を解析し、SameSite、Secure、HttpOnly、Path、Domain、Expires、Max-Age、Partitioned などを構造化して表示します。
解析結果を curl やスクリプトでそのまま使えますか?
はい。request header モードでは正規化された Cookie 内容をコピーできます。JSON や Netscape Cookie File としても出力できるため、curl やクローラースクリプトなどで再利用しやすくなります。
用語集
- Cookie request header
- ブラウザが HTTP request に自動で付与する name-value ペアの集合で、通常は name1=value1; name2=value2 の形式です。現在の request で送られる値のみを含み、Path、Domain、HttpOnly、SameSite などの属性は含みません。HTTP Cookie Parser
- Set-Cookie response header
- サーバーが Cookie を設定するために使う HTTP response header です。通常は1行で1つの Cookie を表し、name=value に加えて Path、Domain、Expires、Max-Age、SameSite、Secure、HttpOnly などを持つことがあります。Set-Cookie Parser
- document.cookie
- フロントエンドスクリプトが読み取れる Cookie 文字列インターフェースです。通常は複数の name=value がセミコロン区切りで並びます。HttpOnly Cookie や完全な Set-Cookie 属性情報は取得できません。
- SameSite
- cross-site request で Cookie を送るかどうかを制御する属性です。よく使われる値は Strict、Lax、None です。
- HttpOnly
- Set-Cookie のセキュリティ属性です。これが付いていると、フロントエンド JavaScript は document.cookie からその Cookie を読めません。
- Secure
- Set-Cookie のセキュリティ属性です。これが付いていると、Cookie は HTTPS 接続でのみ送信されます。localhost はローカル例外です。
- Netscape Cookie File
- 古い形式ながら、いまでも多くの CLI ツール、クローラー、インポートスクリプトが対応している Cookie 用テキストファイル形式です。
- URL エンコードされた Cookie 値
- 特殊文字を percent-encoding で表した Cookie 値です。たとえば %2F や %3D のような形です。デバッグでは元の値とデコード後の値を比較すると役立ちます。URL Encode ツール
- 重複した Cookie 名
- 同じ request 内で同じ Cookie 名が複数回現れることです。異なる Path、異なる Domain、過去の書き込み残りなどが原因になりがちです。
代表的な Cookie 入力3パターンの早見表
Cookie のデバッグ問題は、解析前に入力種類を取り違えることから始まる場合が少なくありません。
| 入力タイプ | 典型例 | 含まれる内容 | より適したツール |
|---|---|---|---|
| document.cookie / Cookie request header | session=abc; theme=dark; lang=zh-CN | フラットな name=value のみ。属性は含まれない | このページの Cookie 文字列モード、または HTTP Cookie Parser |
| Set-Cookie response header | session=abc; Path=/; HttpOnly; Secure; SameSite=Lax | name=value に加えてセキュリティ属性と有効期限属性を含む | このページの Set-Cookie モード、または Set-Cookie Parser |
| Netscape Cookie File | .example.com TRUE / FALSE 0 sid abc123 | Domain、path、secure フラグ、有効期限、name、value | このページで生成して curl やスクリプトへ再利用できる |
よくある Cookie デバッグ問題の対照表
Cookie のトラブルでは、request に載っていないのか、ブラウザが受け取っていないのかを最初に切り分けるのが重要です。
| 症状 | 考えられる原因 | 最初に確認すること |
|---|---|---|
| 目的の Cookie が request にまったく含まれていない | Cookie の書き込みに失敗している、または Path / Domain の scope が一致していない | まず Set-Cookie モード、その後 request header モードを確認 |
| cross-site request で Cookie が送られない | SameSite 制約、Secure 不足、またはブラウザの third-party cookie ポリシー | まず SameSite=None と Secure がセットになっているか確認 |
| Cookie 値が読みにくい | URL エンコードされている、または Base64 / JWT で包まれている | まずデコード表示を開き、必要なら JWT / Base64 をさらに確認 |
| 同名 Cookie の挙動が安定しない | 異なる Path や Domain に複数の書き込みが存在する | 重複を残したまま scope と書き込み元を比較 |
| curl やスクリプトでブラウザの Cookie をそのまま使えない | 標準化された出力形式が不足している | JSON か Netscape Cookie File へ切り替える |
Privacy & Security
Cookie 解析、URL デコード、JSON プレビュー、Netscape 形式の生成はすべてブラウザ内でローカルに実行されます。Session、Token、ログイン Cookie、コピーした header がサーバーへ送信されることはありません。
- 色覚シミュレーター
- カラーコンバーター
- .htaccess→Nginx変換ツール
- SQL 変換ツール
- Cookieパーサー
- Cron式ジェネレーター
- Cron式バリデーター
- CSSフォーマッター
- CSS圧縮
- CSV→Excel変換
- 通貨変換
- 差分チェッカー
- ファビコンジェネレーター
- XMLフォーマッター
- 16進数変換ツール
- HTMLフォーマッター
- HTML圧縮
- HTML→Markdown変換
- MarkdownからHTML変換
- JavaScript フォーマッター
- JS圧縮
- JSXフォーマッター
- JSX 圧縮
- キーワードのクラスタリング
- Lorem Ipsum ジェネレーター
- Markdown テーブルジェネレーター
- Meta Tag ジェネレーター
- パスワード生成器
- パスワード強度チェッカー
- QRコード・バーコードジェネレーター
- 正規表現テスター
- Slugジェネレーター
- SQLビルダー
- SQL フォーマッター
- 文字数カウント
- 時間ツール
- TSフォーマッター
- TS圧縮
- TSXフォーマッター
- TSX圧縮
- Unix タイムスタンプ変換
- UUID ジェネレーター
- YAMLフォーマッター
- 大文字と小文字の変換