tigtools

YAML to JSON 변환기

YAML(Kubernetes 매니페스트, CI 파일, OpenAPI 사양, 설정 파일 등)을 붙여넣으면 포맷된 JSON을 즉시 얻을 수 있습니다. 아무것도 업로드되지 않습니다.

브라우저에서 실행 가입 불필요

들여쓰기

대신 JSON을 YAML로 변환

사용 방법

  1. 입력란에 YAML을 붙여넣거나 예제를 사용해 보세요.
  2. 들여쓰기를 2칸 또는 4칸으로 선택하세요.
  3. JSON을 복사하거나 .json 파일로 다운로드하세요.

작동 방식

YAML은 오픈소스 yaml 라이브러리를 사용해 YAML 1.2 코어 스키마로 파싱됩니다. 이는 최신 도구가 기대하는 방식입니다. yes, no, on, off는 문자열로 유지되고 true와 false만 불리언이 됩니다. 앵커(&name)와 별칭(*name)은 확장되고 << 병합 키가 적용됩니다. 별칭 확장 횟수는 제한되어 있어, 의도적으로 폭발적으로 늘어나는 문서는 페이지를 멈추게 하는 대신 거부됩니다.

---로 구분된 여러 문서가 있는 파일은 문서마다 하나의 요소를 가진 JSON 배열이 됩니다. 주석, 앵커, 태그는 JSON에 해당하는 것이 없어 제거되며 키 순서는 유지됩니다. 타임스탬프는 문자열로 유지됩니다. 약 15자리 이상의 정수는 JavaScript에서 처리되는 모든 JSON과 마찬가지로 정밀도가 떨어집니다.

YAML이 유효하지 않으면 첫 번째 오류가 해당 줄과 열과 함께 표시됩니다. 예를 들어 들여쓰기에 탭이 사용되었거나 닫는 괄호가 누락된 경우입니다. 반대 방향은 JSON to YAML 또는 양방향 JSON ⇄ YAML 변환기를 사용하세요.

예시

앵커가 있는 CI 파일

<<: *defaults로 defaults 블록을 재사용하는 작업 목록이 JSON으로 변환되며, defaults가 각 작업에 복사되어 각 작업이 실제로 받는 내용을 정확히 볼 수 있습니다.

여러 문서가 있는 Kubernetes 파일

---로 구분된 Deployment와 Service가 있는 파일이 두 객체의 JSON 배열이 되어 kubectl이나 jq에서 바로 사용할 수 있습니다.

자주 묻는 질문

yes가 문자열로 유지되는 이유는 무엇인가요?

여기와 대부분의 최신 도구에서 사용하는 YAML 1.2는 true와 false만 불리언으로 처리합니다. 이전 YAML 1.1 파서는 yes, no, on, off를 불리언으로 변환해 많은 버그를 일으켰습니다.

주석은 어떻게 되나요?

JSON에는 주석이 없으므로 주석은 제거됩니다. 데이터 자체는 변경되지 않습니다.

크기 제한이 있나요?

오직 브라우저 메모리에서만 처리됩니다. 큰 파일은 입력 중 잠시 후 변환되므로 페이지가 계속 반응성을 유지합니다.

개인정보 보호

변환은 전적으로 브라우저에서 실행됩니다. YAML과 JSON은 업로드되거나 저장되지 않습니다.