JSON 转 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 与十六进制互转
在浏览器中将 Base64 字符串转换为十六进制字节,并将十六进制转换回 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 编码 / 解码
将文本按百分号编码用于网址,或将编码的网址解码为文本。
开发00
Base64 编码 / 解码
即时将文本编码为 Base64,或将 Base64 解码为文本。
开发00
JSON 格式化与校验工具
在浏览器中格式化、美化、压缩并校验 JSON。
开发00