JSON 포맷터 사용법 — 깨진 JSON 복구, 들여쓰기, 유효성 검사까지
😄 광고 덕분에 100% 무료
목차
서버에서 JSON을 받았는데 한 줄로 쫙 이어져서 도저히 구조가 안 보이는 상황. 혹은 따옴표 하나가 빠져서 Unexpected token 에러가 나는데 어디가 문제인지 모르겠는 순간. 이 글 하나면 해결됩니다.
온라인 JSON 포맷터를 검색하면 광고 가득한 사이트들이 나오지만, 대부분 들여쓰기만 해주는 수준입니다. 깨진 JSON 복구, 트리뷰 탐색, 민감한 데이터 안전 처리까지 한 번에 되는 도구를 찾기가 의외로 어렵습니다.
로그인 없이, 설치 없이, 브라우저 안에서 즉시 처리하세요.
JSON 포맷터가 필요한 순간
실무에서 JSON 포맷터를 꺼내는 전형적인 상황 3가지입니다.
1. API 응답이 한 줄로 압축돼 있을 때
서버 응답은 네트워크 비용을 아끼려고 공백 없이 보내는 경우가 많습니다.
{"user":{"id":42,"name":"홍길동","addresses":[{"city":"서울"},{"city":"부산"}]},"tokens":{"access":"eyJ..."}}
이걸 그대로 보면 구조가 보이지 않습니다. 포맷터에 붙여넣고 [Format] 버튼 한 번이면 끝납니다.
{
"user": {
"id": 42,
"name": "홍길동",
"addresses": [
{ "city": "서울" },
{ "city": "부산" }
]
},
"tokens": {
"access": "eyJ..."
}
}
2. JSON이 깨져서 파싱 에러가 날 때
Unexpected token · Unexpected end of JSON input 같은 에러는 대부분 다음 5가지 중 하나입니다.
- 따옴표 누락 — 문자열 시작·끝 따옴표가 한쪽만 있거나 전부 없음
- 쉼표 실수 — 마지막 요소 뒤에 쉼표가 붙어있음 (trailing comma)
- 작은따옴표 사용 — JSON은 반드시 큰따옴표(
")만 허용 - 주석 — 표준 JSON은
//,/* */주석을 지원하지 않음 - 키에 따옴표 없음 —
{name: "홍길동"}← 키도 큰따옴표로 감싸야 함
Lenient 모드가 있는 파서는 이런 실수를 받아서 복구해줍니다.
3. 깊은 계층에서 특정 값만 찾고 싶을 때
수백 줄짜리 JSON에서 user.addresses[1].city 같은 깊은 경로 하나만 필요한 경우, 트리뷰로 필요한 노드만 펼쳐보면 훨씬 빠릅니다.
iTool JSON 파서 사용법
/text/json-parser/ 열기 → 입력창에 JSON을 붙여넣으면 됩니다. 로그인 불필요.
핵심 기능 6가지
| 기능 | 용도 |
|---|---|
| Format | 보기 좋게 들여쓰기 |
| Minify | 공백 제거해 한 줄로 압축 |
| 들여쓰기 선택 | 2칸 / 4칸 / 탭 |
| Lenient 모드 | 깨진 JSON도 최대한 복구 (복구 부분 하이라이트) |
| 트리뷰 | +/− 버튼으로 접었다 펼치기 |
| 복사·다운로드 | 결과를 바로 붙여넣거나 .json 파일로 저장 |
샘플 JSON으로 테스트하기
기능이 궁금하다면 도구 페이지에서 [샘플] 버튼을 누르세요. 실제 API 응답과 유사한 샘플이 입력창에 채워지고, 포맷·Minify·트리뷰를 바로 시험해볼 수 있습니다.
자주 만나는 JSON 에러 5가지 — 복구 방법
브라우저·Node.js 버전에 따라 정확한 문구는 조금씩 다르지만, 유형은 아래 5가지에 대부분 들어맞습니다.
1. 마지막 쉼표 (trailing comma)
{
"name": "홍길동",
"age": 30,
}
마지막 "age": 30 뒤의 쉼표가 문제. JavaScript 객체 리터럴과 달리 JSON은 마지막 쉼표를 허용하지 않습니다. Lenient 모드에서는 자동 제거됩니다.
2. 작은따옴표
{'name': 'hong'}
JSON 표준은 큰따옴표만 허용합니다. Python dict 리터럴을 그대로 붙여넣을 때 흔한 실수.
{"name": "hong"}
3. None·True·False (파이썬 값 섞임)
파이썬·루비에서 복사해온 데이터에서 자주 나타납니다.
{"value": None, "active": True}
JSON은 null·true·false만 허용(모두 소문자). Lenient 모드는 None·True·False·undefined를 JSON 표준 값으로 자동 변환합니다.
4. 주석
{
"debug": true, // 로컬에서만 true
"port": 8080
}
JSON은 //·/* */ 주석을 지원하지 않습니다. VSCode 설정 파일에서 쓰는 JSONC(주석 허용 JSON) 규격을 쓰거나, Lenient 모드로 주석을 제거하세요.
5. 닫기 괄호 누락
{"items": [{"id": 1}, {"id": 2}
대괄호 ]와 중괄호 }가 닫히지 않았습니다. 긴 JSON에서는 눈으로 찾기 어려운데, 포맷터에 넣으면 어디서 끊겼는지 에러 위치가 바로 표시됩니다.
실무 팁 3가지
1. 민감한 JSON은 브라우저 내에서만 처리되는 도구를 쓰세요
API 키, 토큰, 개인정보가 포함된 JSON을 함부로 외부 사이트에 붙여넣으면 위험합니다. iTool JSON 파서는 100% 브라우저 JavaScript로 동작하며, 입력한 JSON 데이터는 서버로 전송되지 않습니다.
2. 팀 컨벤션에 맞는 들여쓰기 고정
- JavaScript·TypeScript 생태계: 2칸이 기본 (Prettier 기본값)
- Python·Go 커뮤니티: 4칸 선호
- 레거시 시스템·Make 파일 연관: 탭
프로젝트 포맷터 설정에 맞춰서 포맷팅한 뒤 커밋하면 git diff가 깨끗합니다.
3. API 요청 바디용은 Minify
Postman·curl의 --data에 JSON을 넣을 때는 한 줄이 편합니다. Minify로 압축하면 특수문자 이스케이프 실수를 줄일 수 있습니다.
자주 묻는 질문
JSON 포맷터는 왜 필요한가요?
서버 API에서 받은 JSON은 보통 공백 없이 한 줄로 압축돼 있어 사람이 읽기 어렵습니다. 포맷터는 들여쓰기를 적용해 구조를 한눈에 파악할 수 있게 해주고, 유효성 검사로 쉼표·따옴표 누락 같은 실수를 잡아줍니다.
JSON이 깨졌는데 복구할 수 있나요?
네. iTool JSON 파서의 Lenient 모드는 따옴표 누락, 마지막 쉼표(trailing comma), 주석 등 표준 JSON에서 허용하지 않는 문법도 받아서 최대한 복구합니다. 복구된 부분은 하이라이트로 표시되어 어디가 수정됐는지 확인할 수 있습니다.
JSON 들여쓰기는 몇 칸이 표준인가요?
공식 표준은 없지만 실무에서는 2칸 또는 4칸이 일반적입니다. 탭 문자도 가능합니다. iTool 파서에서는 2·4·탭 중 선택할 수 있고, 팀 컨벤션에 맞추면 됩니다.
JSON.stringify와 온라인 포맷터는 뭐가 다른가요?
JSON.stringify는 코드에서 쓸 때 편하지만 깨진 JSON은 파싱 단계에서 바로 예외가 납니다. 온라인 포맷터는 텍스트를 직접 붙여넣고 즉시 결과를 확인할 수 있고, Lenient 모드까지 쓰면 잘못된 JSON도 구조 파악이 가능합니다.
민감한 JSON을 붙여넣어도 안전한가요?
iTool JSON 파서는 100% 브라우저 내에서 동작합니다. 서버로 전송되지 않기 때문에 API 키·개인정보가 포함된 JSON도 외부로 유출되지 않습니다.
JSON을 한 줄로 압축하려면 어떻게 하나요?
Minify 버튼을 누르면 모든 공백과 줄바꿈이 제거되어 한 줄로 압축됩니다. API 요청 바디나 환경 변수에 JSON을 넣어야 할 때 유용합니다.
트리뷰는 언제 쓰나요?
계층이 깊거나 배열이 많은 JSON에서 특정 경로의 값만 보고 싶을 때 유용합니다. +/− 버튼으로 노드를 접었다 펼칠 수 있어서 수백 라인짜리 응답도 필요한 부분만 골라서 볼 수 있습니다.
관련 추천도구
JSON·JSONL 파서 / 포맷터
JSON과 JSONL을 실시간으로 파싱하고 보기 좋게 들여쓰거나 한 줄로 압축하는 무료 온라인 JSON 파서. JSONL(JSON Lines) 파일 자동 인식, 에러 위치 표시, 문법 하이라이트, 복사 지원.
YAML ↔ JSON ↔ TOML 변환기
YAML, JSON, TOML을 실시간으로 3방향 변환. Kubernetes·Docker Compose·GitHub Actions 스마트 검증과 YAML 함정(Norway 문제·8진수 등) 경고까지. 무료 온라인 도구.
XML 파서 / 포맷터
XML을 실시간 검증, 보기 좋게 들여쓰기, 접기/펼치기 트리뷰로 탐색. 속성·텍스트·CDATA·주석 구분 하이라이트. 브라우저에서 처리되는 무료 온라인 XML 파서.
JSON ↔ XML 변환기
JSON과 XML을 실시간 양방향 변환. 속성 접두사, 텍스트 노드 키 등 변환 규칙을 옵션으로 조정 가능. 브라우저에서 처리되는 무료 온라인 변환기.
텍스트 비교
텍스트 비교 — 두 문서의 차이점을 색상으로 한눈에 보여줍니다. 코드, 계약서, 문서 수정사항 확인에 유용.
글자수 세기
글자수 세기 — 글자수, 단어수, 바이트를 실시간으로 계산합니다. 자소서, 블로그 글자수 제한 확인에 유용. 무료.
관련 글
아이폰 사진에 날짜가 안 나와요? 필름카메라처럼 사진에 날짜 넣는 법
아이폰·갤럭시 사진에 촬영 날짜가 안 나오나요? 이미 찍은 사진에 옛날 필름카메라처럼 날짜와 시간을 넣는 법을 알려드려요. 설치 없이 브라우저에서 촬영일자를 자동으로 읽어 1분이면 끝납니다.
3.3% 계산기 완벽 가이드 — 프리랜서 실수령액 계산 + 환급 방법
프리랜서 3.3% 원천징수 세금 계산법. 계약금액에서 실수령액 계산, 실수령액에서 계약금액 역산, 매년 5월 종합소득세 신고로 환급받는 방법까지 정리했습니다.
전월세 전환율 완벽 가이드 — 뜻·계산 방법·법정 상한 한번에
전월세전환율 뜻부터 전세월세전환계산 공식·법정 상한(기준금리+2%)까지 한번에 정리. 전세 1억·2억·3억 기준 월세 자동 계산, 집주인 초과 요구 대응법까지.
😄 광고 덕분에 100% 무료