모든 개발자가 겪는 상황이 있습니다: API 응답을 복사해서 어딘가에 붙여넣으면 중괄호와 대괄호가 뭉쳐진 이스케이프되지 않은 텍스트 벽이 됩니다. JSON은 웹 API의 세계 공용 언어이지만, 적절한 포맷팅 없이는 원시 JSON을 거의 읽을 수 없습니다. JSON 포맷터는 이를 빠르게 이해하는 가장 빠른 방법입니다.
대부분의 “무료 JSON 포맷터” 온라인 도구의 문제는 간단합니다: 데이터를 서버로 전송합니다. 세션 토큰, 사용자 ID 또는 기타 민감한 필드가 포함된 API 응답을 디버깅할 때 제3자 도구에 붙여넣는 것은 불필요한 위험입니다. 더 나은 선택은 완전히 브라우저에서 실행되는 포맷터입니다.
JSON 포맷터의 기능
JSON 포맷터는 압축되었거나 잘못된 JSON을 가져와 읽기 쉽고 적절하게 들여쓰기된 JSON을 출력합니다. 핵심 작업:
- 정리 (Beautify) — 압축된 JSON에 줄 바꿈과 들여쓰기를 추가
- 압축 (Minify) — 공백을 제거하여 가장 작은 유효한 출력 생성
- 검증 (Validate) — 구문 오류 확인 (마침표 쉼표, 누락된 따옴표, 닫히지 않은 중괄호)
- 키 정렬 (Sort keys) — 선택적으로 객체 키를 알파벳 순으로 정렬하여 결정론적 차이(diff) 생성
최고의 포맷터는 단순히 “잘못된 JSON”이 아니라 정확한 줄과 열 번호와 함께 오류를 표시합니다.
브라우저 기반 포맷팅이 중요한 이유
JSON을 서버 측 포맷터에 붙여넣으면 세 가지 일이 발생합니다:
- 데이터가 HTTPS를 통해 기계를 떠납니다
- 서버가 구문 분석하고, 포맷하고, 반환합니다
- 서버가 입력을 기록하거나, 캐시하거나, 검사하지 않기를 바랍니다
공개 데이터(공개 API 응답, 샘플 설정 파일)의 경우 이는 괜찮습니다. 자격 증명, 개인 식별 정보(PII) 또는 독점 데이터가 포함된 경우 보안 위험이 있습니다. 브라우저 기반 포맷터는 네트워크 hop을 완전히 제거합니다. JSON은 브라우저의 JavaScript 엔진에서 JSON.parse()로 구문 분석되고, 메모리에서 포맷되며, 표시됩니다 — 요청 없음, 업로드 없음, 위험 없음.
이를 확인할 수 있습니다: 개발자 도구 → 네트워크를 열고, 포맷터에 JSON을 붙여넣고, 나가는 요청을 확인하십시오. 제대로 설계된 클라이언트 측 도구는 입력 데이터를 전송하는 요청이 없습니다.
온라인에서 JSON 포맷팅하는 방법 (빠른 방법)
- 입력 패널에 JSON을 붙여넣습니다 (또는
.json파일을 드래그) - 포맷터는 모든 키 입력 시 실행됩니다 — 즉시 포맷된 출력이 표시됩니다
- 들여쓰기를 조정합니다 (2칸이 표준이지만 4칸도 가능)
- 결과를 복사하거나
.json파일로 다운로드합니다
JSON이 유효하지 않으면 정확한 오류가 표시됩니다: “5번째 줄, 12번째 열에서 속성 값 후에 ‘,’ 예상됨” — 일반적인 “구문 분석 오류”가 아닙니다.
압축 대 정리: 언제 사용할까
정리 (Beautify) — JSON을 읽거나, 디버깅하거나, 검토할 때. 설정 파일, 개발 중 API 응답, 로그 출력 — 사람이 시각적으로 구문 분석해야 하는 모든 것.
압축 (Minify) — JSON을 네트워크로 전송할 때. 프로덕션 API 페이로드, 캐시된 응답, 메시지 큐. 압축된 JSON은 예쁘게 출력된 JSON보다 20-30% 작으며, 대규모로 쌓입니다.
작동하는 워크플로: 가독성을 위해 저장 시 포맷하고, 배포를 위해 CI에서 압축합니다.
일반적인 JSON 포맷팅 실수
- 마침표 쉼표 — 수동으로 편집된 JSON의 1위 구문 오류.
{ "a": 1, }은 유효하지 않습니다. 마지막 요소 뒤의 쉼표를 제거하십시오. - 홑 따옴표 —
'hello'는 JavaScript이지 JSON이 아닙니다. JSON은 이중 따옴표가 필요합니다. - 인용되지 않은 키 —
{ name: "Alice" }는 객체 리터럴이지 JSON이 아닙니다. 키는 반드시 인용되어야 합니다:{ "name": "Alice" }. - 주석 —
// this is not JSON. JSON에는 주석 구문이 없습니다. 꼭 필요한 경우"comment"키를 사용하십시오. - 혼합된 들여쓰기 — 같은 파일에 탭과 공백이 혼합되면 구문 분석기가 작동하지 않습니다.
JSON을 커밋하기 전에 검증기에 붙여넣으십시오. 1초밖에 걸리지 않지만, 정체불명의 400 오류를 디버깅하는 30분을 절약할 수 있습니다.
브라우저에서 실행되는 JSON 포맷팅 도구
JSON을 정기적으로 포맷해야 한다면 클라이언트 측 포맷터를 북마크하십시오. DevSpeedTools의 JSON 포맷터는 완전히 브라우저에서 실행되며 사용자 정의 가능한 들여쓰기, 즉시 결과, 업로드 없음을 제공합니다. 압축의 경우 JSON 미니파이어는 공백을 제거하여 가장 작은 유효한 출력을 생성합니다. 배포 전에 구문을 확인해야 한다면 JSON 검증기는 정확한 줄과 열 오류를 표시합니다.
핵심 요약: 프로덕션 JSON을 임의의 웹사이트에 붙여넣지 마십시오. 데이터를 기계에 유지하는 도구를 사용하십시오.