JSON 검사기
어떤 JSON 문서든 붙여넣으면 RFC 8259 기준으로 깔끔하게 파싱되는지 확인합니다. 잘못된 입력은 정확한 문제와 함께 표시됩니다, 마지막 배열 항목 뒤의 후행 콤마, 따옴표 없는 키, 닫히지 않은 문자열, JSON이 큰따옴표를 요구하는데 작은따옴표를 쓴 경우, 잘못된 이스케이프 시퀀스, 그리고 파서가 멈춘 줄과 열까지 알려줍니다. API 응답, 설정 파일, 동료가 손으로 편집한 package.json, 코드 생성기 출력 등을 디버깅할 때 유용합니다.
JSON 검사 방식
-
1
JSON 붙여넣기
페이로드, 설정 파일 또는 API 응답을 넣으세요. 공백은 괜찮지만 탭과 주석은 안 됩니다(순수 JSON에는 주석이 없습니다).
-
2
엄격한 RFC 8259 파서로 파싱
검사기는 명세가 금지하는 것을 모두 거부합니다: 후행 콤마, 따옴표 없는 키, 작은따옴표, `undefined`, 16진수.
-
3
오류 읽기
실패하면 파서의 메시지와 함께 대략적인 위치가 표시되므로 해당 문자로 바로 이동할 수 있습니다.
-
4
수정 후 재검사
문제를 고치고 다시 붙여넣어 커밋하거나 전송하기 전에 문서가 유효한지 확인하세요.
엄격한 JSON이 허용하는 것과 허용하지 않는 것
“거의 JSON” 형식이 많이 돌아다닙니다(JSON5, JSONC, HJSON, YAML 유사 하이브리드). JSON 명세 자체는 작고 엄격합니다. 이 검사기는 문서가 엄격한 파서를 통과하는지 알려줍니다, 대부분의 다운스트림 시스템이 실제로 실행하는 것이 바로 그 파서입니다.
대부분이 걸려 넘어지는 규칙
| 규칙 | 유효 | 무효 |
|---|---|---|
| 키는 큰따옴표 문자열이어야 함 | {"a": 1} |
{a: 1} |
| 문자열은 큰따옴표만 사용 | "hello" |
'hello' |
| 후행 콤마 금지 | [1, 2, 3] |
[1, 2, 3,] |
| 주석 금지 | (없음) | // comment 또는 /* */ |
숫자: 선행 + 금지, .5 금지 |
0.5 |
+1, .5 |
| 예약 리터럴만 허용 | true, false, null |
undefined, NaN |
| UTF-8 인코딩 | 유니코드 문자열 | 잘못된 바이트 시퀀스 |
흔한 오류와 의미
- “Unexpected token
}”, 닫는 중괄호 앞에 후행 콤마가 있습니다. - “Expected property name”, 키에 따옴표가 없거나 시작 키의 따옴표를 빠뜨렸습니다.
- “Unexpected end of input”, 여는
{또는[가 닫히지 않았습니다. 괄호 수를 세어보세요. - “Bad control character”, 문자열 리터럴 안에 탭, 줄바꿈 또는 기타 제어 바이트가 있습니다.
\t,\n등으로 이스케이프하세요. - “Duplicate key”, 사실 JSON 명세상의 오류는 아니지만(명세는 고유해야 한다고만 권고), 많은 검사기가 경고합니다. 이 검사기는 하드 실패가 아닌 알림으로 표시합니다.
더 느슨한 형식이 필요하다면
- JSON5는 후행 콤마, 주석, 작은따옴표를 허용합니다. 대상 형식이 그것이라면 JSON5 파서를 사용하세요.
- JSONC(주석이 있는 JSON)는 VS Code 설정이 사용합니다. 엄격한 파싱 전에 주석을 제거하세요.
- YAML은 다른 형식입니다. “그냥 들여쓴 JSON”이라고 가정하지 마세요.
팁
- 커밋 전에 검사하세요.
package.json이나 CI 설정의 오타 하나가 누군가 알아챌 때까지 전체 빌드를 망가뜨립니다. - 검사 후 예쁘게 포맷팅하여 리뷰 diff를 읽기 쉽게 만드세요. 한 줄짜리 JSON 파일은 유효하지만 리뷰하기 괴롭습니다.
- 큰 페이로드의 경우 스트림 검사를 사용하세요(예: 커맨드라인의
jq). 브라우저 내 파싱은 몇 MB를 넘으면 버겁습니다.
자주 묻는 질문
이 도구는 구문 유효성만 확인합니다, 형식이 올바른 JSON인가? 구조 규칙(필수 필드, enum 값, 문자열 길이)에는 JSON Schema 검사기를 사용하세요. 두 단계는 상호 보완적입니다. 애초에 유효한 JSON이 아닌 문서에 Schema 검사를 실행할 이유가 없습니다.
표준 JSON에는 주석이 없기 때문입니다. //와 /* */는 상식적인 확장(JSONC, JSON5)이지만 순수 JSON은 이를 거부합니다. 엄격한 소비자에게 보내기 전에 주석을 제거하거나, 스택 전반에 JSON5를 도입하세요.
엄격한 JSON에서는 무효입니다. 명세는 유한한 숫자만 허용합니다. 소비자가 누락 데이터를 처리하는 방식에 따라 문자열("NaN", "Infinity")이나 null로 직렬화하세요.
아니요, 검사는 브라우저에서 실행되므로 붙여넣은 페이로드는 페이지를 벗어나지 않습니다. 민감한 설정 파일이나 자격 증명이 포함된 API 응답에도 안전합니다.
관련 도구
ASCII 표 참조
NUL, LF, DEL 같은 제어 문자를 포함해 모든 문자에 대한 10진수, 16진수, 8진수, 2진수, HTML 숫자 문자 참조를 담은 0부터 127까지의 전체 ASCII 표.
HTML 문자 참조
HTML 엔티티의 검색 가능한 목록, 각 엔티티의 이름 및 숫자 코드, 그리고 특수 문자 및 기호에 대한 1클릭 복사 기능을 제공합니다.
키보드 단축키 참고표
macOS, Windows, Linux에서 VS Code, Chrome, GNU Readline을 쓰는 Bash의 문서화된 기본 단축키를 검색합니다.
보색 찾기
어떤 입력에 대해서도 보색을 찾습니다. HSL 반대 색, 분할 보색 쌍, 그리고 접근성 있는 조합 제안을 반환합니다.
색상 틴트 생성기
기준 색의 밝은 틴트를 생성합니다. 디자인 시스템 토큰, 배경, 호버 상태를 위한 3-20단계 스케일.
이메일 검증기
이메일 주소를 검증합니다. RFC 5322 구문 검사, 실시간 MX 레코드 조회, 그리고 로컬 파트, 도메인, 길이 정보를 제공합니다. 이메일은 전송되지 않습니다.
이 도구는 다른 언어로도 제공됩니다
- JSON-validator [SV]
- JSON-validator [NL]
- مدقّق JSON [AR]
- JSON-Validator [DE]
- Validateur JSON [FR]
- JSON Validator [ID]
- JSONバリデーター [JA]
- Walidator JSON [PL]
- ตัวตรวจสอบความถูกต้องของ JSON [TH]
- Validador JSON [ES]
- Trình kiểm tra JSON [VI]
- Validador JSON [PT]
- Validator JSON [IT]
- Валидатор JSON [RU]
- JSON Doğrulayıcı [TR]
- JSON 校验器 [ZH]
- JSON Validator [EN]