Парсер HTTP-куки

HTTP Cookie Parser

Анализируйте заголовки Cookie, отправленные браузером. Быстро просматривайте пары ключ-значение, URL-кодирование и повторяющиеся имена.

Результат анализа

4 Cookie(s)
#1session
Исходное значение: abc123
Декодированное значение: abc123
#2theme
Исходное значение: dark
Декодированное значение: dark
#3locale
Исходное значение: zh-CN
Декодированное значение: zh-CN
#4callback
Исходное значение: https%3A%2F%2Fgeekformat.com%2Fdone
Декодированное значение: https://geekformat.com/done

Предпросмотр JSON

[
  {
    "index": 0,
    "raw": "session=abc123",
    "name": "session",
    "value": "abc123",
    "decodedValue": "abc123"
  },
  {
    "index": 1,
    "raw": "theme=dark",
    "name": "theme",
    "value": "dark",
    "decodedValue": "dark"
  },
  {
    "index": 2,
    "raw": "locale=zh-CN",
    "name": "locale",
    "value": "zh-CN",
    "decodedValue": "zh-CN"
  },
  {
    "index": 3,
    "raw": "callback=https%3A%2F%2Fgeekformat.com%2Fdone",
    "name": "callback",
    "value": "https%3A%2F%2Fgeekformat.com%2Fdone",
    "decodedValue": "https://geekformat.com/done"
  }
]

Специально для разбора заголовка Cookie — без предположений об атрибутах, только ответ на вопрос «что именно передано в этом запросе».

Похожие

Что такое парсер HTTP-куки?

Парсер HTTP-куки — это отладочный инструмент, специально предназначенный для заголовка запроса `Cookie:` и строк `document.cookie`. Основная проблема, которую он решает, — не «что такое куки», а практические сценарии, с которыми чаще всего сталкиваются разработчики, инженеры по тестированию и DevOps при интеграции: какие именно куки отправил браузер, закодировано ли значение какого-то куки через URL-кодирование, не дублируются ли куки с одинаковым именем и как скопировать текущий заголовок Cookie в curl, Postman или скрипты для воспроизведения проблемы.

В отличие от заголовка ответа `Set-Cookie`, Cookie в HTTP-запросе представляет собой плоский список `name=value`. Он только показывает «что реально передаётся в текущем запросе» и не содержит информации об атрибутах SameSite, HttpOnly, Secure, Path, Domain, Expires, Max-Age и других. Именно поэтому при диагностике «почему API не распознаёт состояние входа», «какого именно куки не хватает в запросе браузера» или «почему значение в document.cookie выглядит как нечитаемый текст», парсер заголовка запроса оказывается более прямым решением, чем универсальные инструменты для куки.

Самая простая реализация таких инструментов — это простой `split(';')` с последующим отображением строк, но в реальной отладке простого разделения недостаточно. Вам также нужно знать: закодированы ли значения через URL-кодирование, нет ли повторяющихся имён, можно ли напрямую скопировать стандартизированный заголовок и можно ли использовать результаты разбора в скриптах или документации. Текущая страница разработана с учётом этих реальных действий разработчиков.

Если вам нужно посмотреть не «что передаётся в запросе», а «почему браузер отклоняет Set-Cookie от сервера», вам не следует оставаться на этой странице — перейдите к «Парсеру Set-Cookie», который лучше подходит для проверки атрибутов заголовка ответа. Таким образом, назначение этого инструмента совершенно ясно: это отладчик заголовка запроса Cookie / document.cookie, а не аудитор атрибутов заголовка ответа.

Варианты использования

  • При диагностике потери состояния входа или аномалий сессии — проверка, какие куки передаются в заголовке запроса
  • При отладке URL-кодированных куки — сравнение исходных и декодированных значений для подтверждения реального содержимого
  • Проверка, не вызывают ли несколько куки с одинаковым именем некорректную обработку браузером или сервером
  • Быстрая стандартизация заголовка Cookie из браузера с последующим копированием в Postman, curl или скрипты для воспроизведения запроса
  • Анализ вывода document.cookie для подтверждения набора куки, видимых на фронтенде в данный момент

Как использовать

  1. Вставьте заголовок запроса Cookie или строку document.cookie в область ввода
  2. Просмотрите имя, исходное значение и URL-декодированное значение каждого куки
  3. Проверьте наличие предупреждений о повторяющихся именах и результат стандартизированного заголовка Cookie
  4. Скопируйте стандартизированный заголовок Cookie или просмотрите JSON для дальнейшей отладки

Функции

  • Автоматическое разделение куки: разбор заголовка Cookie и строк document.cookie с разделением по точке с запятой
  • Двойное отображение значений: одновременный показ исходных и URL-декодированных значений для быстрого поиска проблем кодировки
  • Обнаружение повторяющихся имён: автоматическое определение куки с одинаковым именем и предупреждение о потенциальных конфликтах
  • Стандартизированный вывод: копирование нормализованного заголовка Cookie одним нажатием для дальнейшей отладки API
  • Просмотр JSON: структурированный вывод результатов разбора для использования в скриптах, логах и тестовых инструментах
  • Локальная обработка: вводимые данные анализируются только в браузере без отправки на сервер

Как выбрать между этой страницей и двумя другими инструментами для куки?

Сначала определите, что у вас в руках: заголовок запроса, document.cookie или заголовок ответа Set-Cookie от сервера, а затем выберите подходящую страницу.

ИнструментПодходящий вводЛучше всего подходитКлючевое преимущество
Парсер HTTP-куки (текущая страница)Заголовок запроса Cookie, document.cookieПроверка того, какие куки реально передаются в запросе, закодированы ли значения, нет ли повторяющихся имёнСпециализация на разборе заголовка запроса, стандартизированное копирование, URL-декодирование и обнаружение дубликатов
Парсер Set-CookieЗаголовок ответа Set-Cookie от сервераДиагностика причин, по которым браузер не принимает куки, проверка рисков в настройках SameSite / Secure / HttpOnly / Path / DomainБолее глубокий разбор атрибутов и предупреждения о конфигурации безопасностиОткрыть парсер Set-Cookie
Парсер CookieСмешанные сценарии отладки строк Cookie и Set-CookieСитуации с неопределённым источником данных или когда нужен единый вход для быстрого распределенияПереключение между двумя режимами и поддержка экспорта в Netscape Cookie FileОткрыть парсер Cookie

Best Practices

Сначала убедитесь, что вы смотрите на заголовок запроса, а не ответа

Если текст получен из Request Headers в DevTools браузера, из запроса в инструменте перехвата, из document.cookie или из заголовка Cookie в серверных логах — текущая страница подходит; если это Set-Cookie из Response Headers, не продолжайте анализ атрибутов здесь.

Сохраняйте исходные значения, затем смотрите декодированные

При отладке проблем с куки не смотрите только на декодированное содержимое. Исходные значения — это то, что действительно передаётся; декодированные значения — это вспомогательная информация для чтения. Исходные значения особенно важны для сценариев с подписью, Base64, JWT или вторичным кодированием.

Инструмент JWT

Не торопитесь удалять повторяющиеся имена

Повторяющиеся куки могут быть именно первопричиной проблемы, особенно при разных Path / Domain, переключении окружений или устаревших записях. Сначала сохраните повторяющиеся элементы и запишите их, затем сопоставьте с поведением браузера и настройками сервера.

При воспроизведении запроса предпочитайте копирование стандартизированного заголовка

Когда вам нужно передать текущий заголовок Cookie в curl, Postman или тестовые скрипты, копирование стандартизированного результата напрямую уменьшит ошибки воспроизведения, вызванные лишними пробелами, переносами строк и шумами форматирования.

Конвертер curl в код

Часто задаваемые вопросы

Для какого ввода подходит эта страница?

Она специально разработана для разбора заголовка запроса Cookie и плоских строк в стиле `document.cookie`, например `session=abc123; theme=dark`. Если у вас есть заголовок ответа `Set-Cookie` от сервера, перейдите к сопутствующему «Парсеру Set-Cookie», поскольку заголовок запроса Cookie не содержит атрибутов SameSite, HttpOnly, Secure, Path, Domain и других.

Парсер Set-Cookie

Почему значения куки выглядят как нечитаемый текст?

Многие значения куки проходят URL-кодирование, например `%3D` означает `=`, а `%2F` означает `/`. Этот инструмент одновременно отображает исходные значения и URL-декодированные значения, чтобы вы могли быстро увидеть реальное содержимое, а не только закодированную строку.

Зачем обнаруживать повторяющиеся имена куки?

Куки с одинаковым именем могут происходить из разных Path, разных Domain или быть устаревшими записями. Хотя в заголовке запроса это просто плоская строка `name=value`, повторяющиеся имена часто приводят к несогласованному поведению браузера или обработки на сервере, поэтому инструмент активно предупреждает об этом, а не молча перезаписывает.

Подходит ли для диагностики состояния входа и проблем с сессиями?

Да. Вставьте заголовок Cookie, фактически отправляемый в запросе браузера, и вы наглядно увидите имя, исходное значение и декодированное значение каждого куки. Быстро проверьте, не пропущен ли какой-то сессионный параметр, не испорчено ли значение кодировкой или не создают ли путаницу несколько куки с одинаковым именем.

Можно ли использовать результат разбора непосредственно для отладки API?

Да. Инструмент генерирует стандартизированный заголовок Cookie для копирования в curl, Postman, скрипты или платформы отладки API, а также поддерживает просмотр JSON для логирования, создания отчётов об ошибках и записей тестовых случаев.

Почему на этой странице не отображаются SameSite, HttpOnly, Secure?

Потому что эти атрибуты существуют только в заголовке ответа `Set-Cookie` и не появляются в заголовке запроса `Cookie`, который браузер отправляет впоследствии. Текущая страница фокусируется на том, «что именно передаётся в запросе», а не на том, «что установил сервер изначально».

Это одно и то же — document.cookie и заголовок запроса Cookie?

Они очень похожи, оба представляют собой плоскую структуру `name=value; name2=value2`, но есть различия: `document.cookie` не может читать HttpOnly-куки, а Cookie в заголовке запроса — это итоговый набор, который браузер автоматически отправляет в соответствии с текущей областью видимости. Этот парсер подходит для обработки обоих типов плоского ввода.

Отправляются ли вставленные куки на сервер?

Нет. Разбор, URL-декодирование, обнаружение дубликатов и просмотр JSON на текущей странице выполняются локально в браузере. Session, Token, куки состояния входа и пользовательские данные не отправляются ни на какой сервер.

Глоссарий

Заголовок запроса Cookie
Набор пар имя-значение куки, которые браузер автоматически отправляет в HTTP-запросе, обычно в формате `name1=value1; name2=value2`. Он отражает куки, реально отправленные в текущем запросе, и не содержит атрибутов безопасности.Парсер Set-Cookie
document.cookie
Интерфейс строки куки, доступный для чтения из JavaScript на стороне клиента. Обычно он имеет структуру, схожую с заголовком Cookie запроса, но не может читать HttpOnly-куки и не позволяет восстановить полную конфигурацию Set-Cookie.
URL-кодированные значения куки
Значения куки используют процентное кодирование для безопасной передачи специальных символов, например `%3D`, `%2F`, `%3A`. При отладке обычно требуется одновременно просматривать исходные и декодированные значения.Инструмент URL Encode
Повторяющиеся имена куки
Несколько куки с одинаковым именем в одном заголовке запроса. Они могут происходить из разных Path, разных Domain или быть устаревшими значениями, и часто являются важным признаком проблем с сессиями и несогласованного поведения.
Стандартизированный заголовок Cookie
Очищенный и заново собранный ввод в каноническую строку `name=value; name2=value2` для удобства копирования в curl, скрипты, Postman или логи для воспроизведения проблем.

Сравнительная таблица заголовка запроса Cookie и заголовка ответа Set-Cookie

Многие ошибки при отладке куки возникают из-за смешанного просмотра заголовков запроса и ответа.

Параметр сравненияЗаголовок запроса CookieЗаголовок ответа Set-Cookie
Где появляетсяВ запросе, который браузер отправляет серверуВ ответе, который сервер возвращает браузеру
Типичный форматname1=value1; name2=value2name=value; Path=/; HttpOnly; Secure
Содержит ли атрибутыНе содержитСодержит SameSite / Path / Domain / Expires / Max-Age и др.
Подходит для диагностикиЧто именно передаётся в запросеПочему браузер не принимает куки
Более подходящий инструментТекущая страницаПарсер Set-Cookie

Таблица частых проблем при отладке заголовка запроса Cookie

Когда у вас есть куки из заголовка запроса, эти проблемы возникают чаще всего.

СимптомНаиболее вероятная причинаПроверить в первую очередь
API не распознаёт состояние входаВ запросе вообще отсутствует нужный куки или имя и значение не совпадаютСначала убедитесь, что целевой сессионный параметр есть в стандартизированном заголовке Cookie
Значение куки выглядит как нечитаемый текстЗначение прошло URL-кодированиеСравните одновременно исходное и декодированное значения
Поведение различается в разных окруженияхПовторяющиеся имена куки, устаревшие значения или разный выбор области видимости браузеромПосмотрите предупреждения о повторяющихся именах и запишите все одноимённые элементы
Скрипт не воспроизводит запросПри копировании попадают лишние пробелы, переносы строк или шумы форматированияИспользуйте стандартизированный заголовок Cookie для повторного копирования

Privacy & Security

Разбор заголовка Cookie, URL-декодирование, обнаружение дубликатов и просмотр JSON выполняются локально в браузере. Вводимые Session, Token и куки состояния входа не отправляются ни на какой сервер.

Authoritative References