JSON to Protobuf 스키마 변환기 (proto3)
개발
JSON 객체나 배열을 붙여넣으면 바로 사용할 수 있는 Protocol Buffers(proto3) 스키마를 얻을 수 있습니다. 필드는 proto 스칼라 타입(string, int64, double, bool)으로 매핑되고, 배열은 repeated 필드로, 중첩 객체는 별도의 message로 생성됩니다. lower_snake_case가 아닌 키에는 [json_name = "..."] 옵션이 추가되어 표준 JSON 매핑이 원래 키와 일치하도록 합니다. 모든 처리는 브라우저에서 로컬로 실행되며 JSON은 업로드되지 않습니다.
—
Protobuf 스키마
사용법
- 입력 상자에 JSON을 붙여넣거나 입력합니다.
- 선택적으로 루트 메시지 이름을 변경합니다(기본값 Message).
- 출력 상자에서 생성된 .proto 스키마를 복사합니다.
자주 묻는 질문
- 숫자는 어떻게 타입이 지정되나요?
- 정수는 int64, 소수점이 있는 숫자는 double이 됩니다. 다른 너비가 필요하면 int32, uint32, float 등으로 변경하세요.
- null, 빈 배열, 중첩 배열은 어떻게 되나요?
- 이들은 google.protobuf.Value로 매핑되며(import "google/protobuf/struct.proto"가 추가됨), proto3에는 기본 null이 없고 repeated repeated 필드를 허용하지 않기 때문입니다.
- 일부 필드에 json_name 옵션이 있는 이유는 무엇인가요?
- proto 필드 이름은 lower_snake_case입니다. 표준 camelCase JSON 매핑이 원래 키를 재현하지 못할 경우 [json_name = "..."] 옵션이 추가되어 JSON이 올바르게 왕복됩니다.
- 제 JSON이 어딘가로 전송되나요?
- 아니요. 변환은 전적으로 브라우저에서 이루어지며 아무것도 업로드되지 않습니다.
관련 도구
Base64 ↔ 16진수 변환기
Base64 문자열을 16진수 바이트로, 16진수를 다시 Base64로 변환합니다. URL-safe 지원, 브라우저에서 동작합니다.
개발00
Quoted-Printable 인코더 & 디코더
텍스트를 MIME Quoted-Printable(RFC 2045)로 인코딩하거나 다시 디코딩 — =XX 이스케이프·소프트 줄바꿈·UTF-8 처리, 인코딩 시 76자 줄바꿈 — 브라우저에서.
개발00
해시 생성기 (SHA)
텍스트로 SHA-1·SHA-256·SHA-384·SHA-512 해시를 생성하세요.
개발00
URL 인코더 / 디코더
URL용으로 텍스트를 퍼센트 인코딩하거나, 인코딩된 URL을 디코딩하세요.
개발00
Base64 인코더 / 디코더
텍스트를 Base64로 인코딩하거나 다시 텍스트로 디코딩하세요.
개발00
JSON 포맷터 & 검증기
브라우저에서 바로 JSON을 포맷·정렬·압축·검증하세요.
개발00