ByteCompress

JSON 축소기

JSON에서 불필요한 공백, 들여쓰기 및 줄 바꿈을 제거하여 가장 작은 유효 페이로드를 생성합니다. API 응답 크기를 줄이고 저장 공간을 최적화합니다.

0 chars
FreeClient-sideNo signup

축소는 JSON 페이로드를 30-50% 줄이며, 이는 들여쓰기 깊이와 중첩에 따라 달라집니다. 4칸 들여쓰기가 있는 형식화된 JSON 객체는 1,000바이트 이상의 순수 공백을 포함합니다. 시간당 10,000 API 호출 시, 이 오버헤드는 시간당 10MB 이상의 불필요한 데이터 전송으로 이어집니다. 이 브라우저 기반 축소기는 모든 비필수 문자를 제거하면서 데이터의 100%를 보존합니다. 업로드 필요 없음, 가입 필요 없음, 즉시 결과.

JSON 축소하는 방법

  1. 형식이 지정되거나 예쁘게 꾸며진 JSON을 입력 영역에 붙여넣습니다.
  2. 축소를 클릭하여 모든 불필요한 공백을 제거합니다.
  3. 출력 패널에 압축된 단일 행 JSON이 표시됩니다.
  4. 복사를 클릭하여 축소된 JSON을 클립보드에 복사합니다.
  5. 선택적으로 결과를 .json 파일로 다운로드합니다.

크기 축소

네트워크 성능

HTTP 응답의 모든 바이트는 전송, 수신 및 버퍼링되어야 파싱이 시작됩니다. 4칸 들여쓰기가 있는 일반적인 예쁘게 출력된 API 응답은 각 줄마다 약 5-7 바이트의 공백을 포함합니다. 축소는 이 오버헤드를 완전히 제거합니다. 대부분의 프로덕션 API와 CDN 호스팅 JSON 파일은 바로 이 이유로 축소됩니다.

저장 최적화

데이터베이스, 객체 저장소(S3, R2) 또는 빌드 아티팩트에 포함된 JSON을 저장할 때 축소의 이점을 누릴 수 있습니다. PostgreSQL jsonb 열에 저장된 축소된 JSON은 예쁘게 꾸며진 것보다 더 효율적으로 저장됩니다. 모바일 앱 번들 및 IoT 펌웨어의 구성 파일은 플랫폼 저장소 제약으로 인해 상당한 크기 축소를 경험합니다.

예시

입력 (4칸 들여쓰기, 128 바이트)

{
    "status": "ok",
    "user": {
        "id": 42,
        "name": "Bob"
    }
}

출력 (축소, 47 바이트 - 63% 축소)

{"status":"ok","user":{"id":42,"name":"Bob"}}

크기 축소 벤치마크

  • 2칸 들여쓰기, 얕은 객체: 25-35% 축소
  • 4칸 들여쓰기, 얕은 객체: 30-45% 축소
  • 4칸 들여쓰기, 깊게 중첩된 (5단계 이상): 40-55% 축소
  • 대량의 객체 배열: 값 밀도에 따라 30-50% 축소
  • gzip 이후: 차이가 5-15%로 좁혀지지만, 축소는 여전히 압축을 위한 CPU 시간을 줄입니다.

축소할 때

생산 API 응답에서 JSON을 축소합니다. 개발 및 문서에서는 형식이 지정된 버전만 유지합니다. 축소하기 전에 JSON 검증기를 실행하여 입력이 유효한지 확인합니다 - 유효하지 않은 JSON은 축소에 실패합니다. 축소 후, JSON 포맷터는 출력을 다시 읽어야 할 경우 과정을 되돌립니다. 최대 전송 크기 축소를 위해 gzip 또는 Brotli와 함께 축소를 결합하세요.

자주 묻는 질문

축소가 내 JSON 데이터를 변경하나요?

아니요. 축소는 구조적 공백만 제거합니다 - 토큰 사이의 공백, 탭 및 줄 바꿈. 모든 키, 값, 배열, 객체 및 중첩은 그대로 유지됩니다. 축소된 출력을 포맷하여 원본과 비교해 확인할 수 있습니다.

얼마나 크기가 줄어들까요?

일반적으로 30-50%입니다. 4칸 들여쓰기를 하고 5단계 중첩된 JSON 객체는 50-60% 줄어들 수 있습니다. 정확한 축소량은 중첩 깊이와 페이로드의 문자열 값 비율에 따라 다릅니다. 축소는 문자열 값을 더 이상 압축할 수 없습니다.

이미 부분적으로 압축된 JSON을 축소할 수 있나요?

네. 축소기는 현재 들여쓰기 수준이나 공백 불일치에 관계없이 모든 JSON을 정규화합니다. 거의 압축된 JSON도 최소 유효 표현으로 줄어듭니다 - 토큰 사이에 공백이 없는 단일 문자열로.

파일 크기 제한이 있나요?

서버 측 제한은 없습니다. 모든 작업이 브라우저에서 실행되기 때문입니다. 매우 큰 파일(50MB 이상)은 장치의 메모리와 CPU에 따라 느릴 수 있습니다. 매우 큰 페이로드를 파싱하는 동안 브라우저가 잠시 멈출 수 있습니다.

문자열 값 내부의 공백이 제거되나요?

아니요. 축소기는 구문 인식이 가능합니다: JSON을 토큰 단위로 파싱하고 토큰 사이의 구조적 공백만 제거합니다. 문자열 값의 일부인 공백, 탭 및 줄 바꿈은 항상 작성된 대로 정확하게 유지됩니다.