logo
GeekFormat

쿠키 파서

이름 *- 연혁
위로 파기 후에 해결책

Netscape 파일은 Curl이 될 수 있습니다.-buse;no 도메인은 placeholder 도메인에 의해 대체되었습니다.

로그인, API, 브라우저 디버깅 중 Cookie 요청 헤더와 Set-Cookie 응답 헤더를 한 페이지에서 함께 이해할 수 있습니다.

관련 추천

쿠키 파서란 무엇인가요?

쿠키 파서는 브라우저, 프론트엔드 코드, API 도구, 서버 응답에서 가져온 쿠키 텍스트를 구조화된 결과로 바꿔 줍니다. 이론 설명보다도 실제 디버깅 질문에 답하는 데 초점을 둡니다. 예를 들어 요청이 실제로 어떤 쿠키를 보냈는지, Set-Cookie 에 어떤 속성이 있는지, 브라우저가 왜 쿠키를 거부했는지, 결과를 스크립트나 CLI 도구에서 어떻게 재사용할 수 있는지가 핵심입니다.

document.cookie, Cookie 요청 헤더, Set-Cookie 응답 헤더를 같은 입력 형식으로 보는 것은 흔한 실수입니다. document.cookie 와 요청 쿠키는 평평한 name=value 쌍이고, Set-Cookie 는 SameSite, Path, Domain, Expires, Max-Age, HttpOnly, Secure 같은 속성을 가진 서버 응답 헤더입니다.

이 페이지는 입력된 쿠키 텍스트의 종류를 아직 모를 때, 혹은 요청이 보낸 것과 서버가 돌려준 것을 함께 비교해야 할 때 유용한 공통 진입점입니다.

단순히 split(;) 만 하는 도구와 달리 원본 값을 유지하고, 디코딩 결과를 보여 주며, 속성을 구조화해서 표시하고, JSON 과 Netscape Cookie File 로 내보내며, 중복 쿠키를 중요한 단서로 그대로 남겨 둡니다.

요청 헤더 중심의 흐름이 필요하면 HTTP Cookie Parser 를, 브라우저가 쿠키를 거부한 이유나 Set-Cookie 속성 문제를 깊게 보고 싶다면 Set-Cookie Parser 를 사용하는 것이 좋습니다.

사용 사례

  • DevTools 나 로그의 document.cookie 문자열을 빠르게 개별 쿠키 항목으로 분해하기
  • Network 패널의 여러 줄 Set-Cookie 를 붙여 넣어 브라우저가 쿠키를 거부한 이유 확인하기
  • 로그인 상태 손실, cross-site 요청에서 빠지는 쿠키, 중복 이름 충돌 조사하기
  • URL 인코딩된 쿠키 값을 읽기 쉬운 텍스트로 복원하기
  • 파싱 결과를 JSON 으로 바꿔 스크립트, issue, 문서, 테스트 케이스에 활용하기
  • curl, 크롤러, import 기반 도구용 Netscape Cookie File 만들기
  • frontend, QA, ops, crawler 디버깅에서 공용 쿠키 triage 페이지로 사용하기

이용 방법

  1. 먼저 source 를 확인하세요. document.cookie, request header, log 라면 Cookie 문자열 모드, response header 라면 Set-Cookie 모드를 선택합니다.
  2. 원본 쿠키 텍스트를 입력 영역에 붙여 넣으면 이름, 값, 속성이 자동으로 분리됩니다.
  3. URL 디코딩 값을 켜고 중요한 필드를 필터링하며, 필요하면 중복 이름 경고와 속성 표를 확인합니다.
  4. 정규화된 텍스트를 복사하거나 JSON / Netscape Cookie File 로 내보내 다음 디버깅 단계에 사용합니다.

주요 기능

  • document.cookie / Cookie 요청 헤더와 여러 줄 Set-Cookie 응답 헤더를 위한 이중 모드 파싱
  • 원본 값, URL 디코딩 값, SameSite / Secure / HttpOnly / Path / Domain / Expires / Max-Age 필드를 포함한 이름·값·속성 자동 분해
  • Path 충돌, scope 겹침, 불안정한 세션 동작을 찾는 데 도움이 되는 중복 이름 경고
  • 스크립트, API 디버깅, 재현 가능한 버그 리포트에 적합한 구조화 JSON 내보내기
  • curl 및 크롤러 툴체인을 위한 Netscape Cookie File 생성
  • Session, Token, 로그인 쿠키가 외부로 나가지 않도록 하는 로컬 처리
  • 요청 측과 응답 측 쿠키 디버깅을 명확히 나눠 주는 범용 진입점

쿠키 분석 도구는 어떻게 선택하나요?

이 페이지는 범용 진입점으로 좋지만, 입력 유형을 이미 알고 있다면 전용 도구가 더 빠릅니다.

도구적합한 입력적합한 용도핵심 강점
쿠키 파서 (현재 페이지)Cookie 문자열, document.cookie, 여러 줄 Set-Cookie입력 유형이 아직 확실하지 않거나 요청/응답 쿠키를 한곳에서 보고 싶을 때이중 모드, JSON / Netscape 내보내기, 실용적인 중앙 디버깅 허브
HTTP Cookie ParserCookie 요청 헤더와 document.cookie 형태의 문자열요청이 실제로 어떤 쿠키를 보냈는지, 이름이 중복되는지, 값이 URL 인코딩되었는지 확인할 때요청 측 name/value 분석에 더 집중HTTP Cookie Parser 열기
Set-Cookie Parser서버가 반환한 Set-Cookie 응답 헤더브라우저가 쿠키를 왜 거부했는지와 SameSite / Secure / HttpOnly 문제가 있는지 확인할 때보안 속성과 브라우저 정책을 더 깊게 분석Set-Cookie Parser 열기

Best Practices

먼저 request header 인지 response header 인지 구분하세요

텍스트가 frontend code, document.cookie, request log, curl header 에서 왔다면 Cookie 문자열 모드로 시작하세요. Response Headers 에서 왔다면 Set-Cookie 모드로 전환하세요.

HTTP Cookie ParserSet-Cookie Parser

디코딩된 값을 보더라도 원본 값을 잃지 마세요

많은 쿠키 값이 URL 인코딩되어 있습니다. 디버깅 중에는 원본 값과 디코딩 값을 모두 볼 수 있어야 안전합니다.

중복 이름이 보이면 먼저 Path 와 Domain 을 확인하세요

중복 쿠키는 다른 path, 다른 domain, 이전 쓰기 잔재를 의미할 수 있습니다. 자동 중복 제거는 실제 원인을 숨길 수 있습니다.

다음 단계에 맞는 내보내기 형식을 선택하세요

문서, issue, 스크립트에 붙여 넣을 용도라면 JSON 이 더 읽기 쉽습니다. curl, 크롤러, 쿠키 파일 import 도구에 넘길 거라면 Netscape Cookie File 을 선택하세요.

curl → 코드

자주 묻는 질문

이 쿠키 파서는 어떤 입력 형식을 지원하나요?

document.cookie 또는 Cookie: 요청 헤더처럼 name=value; name2=value2 형태의 평평한 문자열과, 브라우저 Network 패널에서 복사한 여러 줄의 Set-Cookie 응답 헤더를 지원합니다. 전자는 실제 요청에 어떤 쿠키가 실렸는지 보는 데 적합하고, 후자는 SameSite, Secure, HttpOnly, Path, Domain, Expires, Max-Age 같은 속성 점검에 적합합니다.

Cookie 요청 헤더와 Set-Cookie 응답 헤더의 차이는 무엇인가요?

Cookie 요청 헤더는 브라우저가 서버로 보내는 평평한 key-value 목록이며 속성 메타데이터를 포함하지 않습니다. Set-Cookie 는 서버가 브라우저로 돌려주는 응답 헤더로, 각 줄이 하나의 쿠키 설정을 나타내며 이름과 값 외에도 Path, Domain, Expires, SameSite, Secure, HttpOnly 같은 속성을 포함할 수 있습니다.

쿠키 값이 깨져 보이는 이유는 무엇인가요?

많은 쿠키 값이 URL 인코딩되어 있기 때문입니다. 예를 들어 %3D 는 =, %2F 는 / 를 뜻합니다. 이 도구는 원본 값을 유지하면서 디코딩 결과도 함께 보여 줍니다.

같은 쿠키 이름이 중복되어 보이는 이유는 무엇인가요?

서로 다른 Path, 서로 다른 Domain, 또는 디버깅 중 반복 저장 때문에 중복 이름이 생길 수 있습니다. 이런 중복 자체가 중요한 단서가 될 수 있으므로 도구는 자동으로 제거하지 않고 경고로 표시합니다.

JSON 내보내기와 Netscape 내보내기는 언제 써야 하나요?

JSON 은 스크립트, 테스트 케이스, API 문서, 로그 분석에 더 적합합니다. Netscape Cookie File 은 curl -b 처럼 해당 형식을 지원하는 도구나 명령줄 흐름에서 쿠키를 재사용할 때 더 적합합니다.

로그인 상태가 사라지는 문제를 조사할 때도 쓸 수 있나요?

네. 먼저 Cookie 모드에서 요청이 실제로 어떤 쿠키를 보냈는지 보고, 이후 Set-Cookie 모드로 전환해 서버 속성 설정에 문제가 없는지 확인할 수 있습니다.

요청 쿠키만 보고 싶다면 왜 이 통합 파서를 써야 하나요?

document.cookie 와 Set-Cookie 를 모두 볼 가능성이 있고 하나의 진입점이 필요할 때 유용합니다. 요청 쿠키만 필요하다면 HTTP Cookie Parser 가 더 집중된 도구입니다.

여기에 붙여 넣은 Session, Token, 로그인 쿠키가 서버로 업로드되나요?

아니요. 쿠키 파싱, URL 디코딩, JSON 미리보기, Netscape 텍스트 생성은 모두 브라우저 안에서 로컬로 실행됩니다.

Set-Cookie 안의 SameSite, Secure, HttpOnly 를 자동으로 인식하나요?

네. 각 Set-Cookie 줄을 파싱해서 SameSite, Secure, HttpOnly, Path, Domain, Expires, Max-Age, Partitioned 같은 구조화된 필드를 보여 줍니다.

분석 결과를 curl 이나 스크립트에서 바로 재사용할 수 있나요?

네. 요청 헤더 모드에서는 정규화된 Cookie 내용을 복사할 수 있고, JSON 과 Netscape Cookie File 로도 내보낼 수 있습니다.

용어집

Cookie 요청 헤더
브라우저가 HTTP 요청에 자동으로 포함하는 name-value 쌍 모음으로, 보통 name1=value1; name2=value2 형태입니다. 현재 요청에 실제로 실리는 값만 포함하며 Path, Domain, HttpOnly, SameSite 같은 속성은 포함하지 않습니다.HTTP Cookie Parser
Set-Cookie 응답 헤더
서버가 쿠키를 설정할 때 사용하는 HTTP 응답 헤더입니다. 보통 한 줄이 하나의 쿠키를 나타내며 name=value 외에 Path, Domain, Expires, Max-Age, SameSite, Secure, HttpOnly 같은 속성을 포함할 수 있습니다.Set-Cookie Parser
document.cookie
프론트엔드 스크립트가 읽을 수 있는 쿠키 문자열 인터페이스입니다. 보통 세미콜론으로 구분된 여러 name=value 쌍으로 보입니다. HttpOnly 쿠키나 전체 Set-Cookie 속성 정보는 포함하지 않습니다.
SameSite
쿠키가 cross-site 요청에서 전송될지 여부를 제어하는 속성입니다. 일반적인 값은 Strict, Lax, None 입니다.
HttpOnly
Set-Cookie 의 보안 속성입니다. 이 속성이 있으면 프론트엔드 JavaScript 가 document.cookie 로 해당 쿠키를 읽을 수 없습니다.
Secure
Set-Cookie 의 보안 속성입니다. 이 속성이 있으면 쿠키는 HTTPS 연결에서만 전송되며 localhost 는 로컬 예외입니다.
Netscape Cookie File
오래된 형식이지만 지금도 많은 CLI 도구, 크롤러, import 스크립트가 지원하는 쿠키용 텍스트 파일 형식입니다.
URL 인코딩된 쿠키 값
특수 문자를 %2F, %3D 같은 percent-encoding 으로 표현한 쿠키 값입니다. 디버깅 중에는 원본 값과 디코딩 값을 함께 비교하는 것이 좋습니다.URL Encode 도구
중복된 쿠키 이름
같은 요청 안에서 동일한 쿠키 이름이 여러 번 나타나는 것으로, 서로 다른 Path, 서로 다른 Domain, 과거 쓰기 잔재 등이 원인일 수 있습니다.

자주 쓰이는 3가지 쿠키 입력 형태 빠른 안내

많은 디버깅 문제는 파싱 전에 입력 형식을 잘못 판단하면서 시작됩니다.

입력 유형대표 예시포함 내용더 적합한 도구
document.cookie / Cookie 요청 헤더session=abc; theme=dark; lang=zh-CN속성 없는 평평한 name=value 쌍만 포함이 페이지의 Cookie 문자열 모드 또는 HTTP Cookie Parser
Set-Cookie 응답 헤더session=abc; Path=/; HttpOnly; Secure; SameSite=Laxname=value 와 함께 보안 및 수명 속성 포함이 페이지의 Set-Cookie 모드 또는 Set-Cookie Parser
Netscape Cookie File.example.com TRUE / FALSE 0 sid abc123Domain, path, secure 플래그, 만료 시각, name, value이 페이지에서 생성해 curl 과 스크립트에 재사용 가능

자주 발생하는 쿠키 디버깅 문제 표

쿠키 문제를 볼 때는 먼저 요청에 아예 실리지 않은 것인지, 브라우저가 거부한 것인지 나누는 것이 중요합니다.

증상가능성 높은 원인먼저 확인할 것
대상 쿠키가 요청에 전혀 보이지 않음쿠키가 올바르게 저장되지 않았거나 Path / Domain scope 가 맞지 않음먼저 Set-Cookie 모드를, 그다음 요청 헤더 모드를 확인
cross-site 요청에서 쿠키가 전송되지 않음SameSite 제한, Secure 누락, third-party cookie 정책먼저 SameSite=None 과 Secure 가 함께 있는지 확인
쿠키 값이 읽기 어렵게 보임URL 인코딩되었거나 Base64 / JWT 로 한번 더 감싸져 있음디코딩 보기부터 열고 필요하면 JWT / Base64 를 계속 확인
같은 이름의 쿠키가 불안정하게 동작함서로 다른 Path 또는 Domain 아래 여러 번 기록됨중복을 남겨 둔 채 scope 와 기록 출처를 비교
curl 이나 스크립트에서 브라우저 쿠키를 바로 재사용할 수 없음표준화된 내보내기 형식이 없음JSON 또는 Netscape Cookie File 내보내기로 전환

Privacy & Security

쿠키 파싱, URL 디코딩, JSON 미리보기, Netscape 텍스트 생성은 모두 브라우저 안에서 로컬로 수행됩니다. Session, Token, 로그인 쿠키, 복사한 헤더가 서버로 업로드되지는 않습니다.