Protobuf 解析器

༐ Protobuf Parser

📐 工作原理与说明
解析 Protocol Buffers 的二进制编码结构。
  • 编码:每个字段为 key + value,key 是 varint,等于 (字段号 << 3) | wire_type。
  • wire type:0 为 varint、1 为 64 位、2 为长度前缀(字符串/嵌套/字节)、5 为 32 位。
  • varint:每字节低 7 位存数据,最高位为 1 表示还有后续字节,小端排列。
  • 局限:无 .proto 时只能还原字段号与原始值,字段名与类型需 schema 才能确定。

Parse and inspect Protocol Buffer messages in your browser — decode binary schemas.

等待输入...

📚 深度解析:Protobuf 解析器

💡 常见使用场景

  • 按 .proto 解析二进制消息(需 schema)。
  • 抓包排查 gRPC 接口:用 .proto 定义解析二进制消息,看清字段值,而不是对着十六进制猜。
解析
给定 message User{string name=1} 与字节流 → {name:"Tom"}。

❓ 常见问题(FAQ)

无 schema 能解析吗?
不能,Protobuf 自描述弱,需 .proto。
为什么解析出来的字段对不上?
多半是 schema 版本不一致:Protobuf 靠字段编号(而非名称)识别字段,收发双方若用了不同版本的 .proto,同一个编号会被解释成完全不同的含义,且不会报错。因此必须保证解析用的 .proto 与发送方完全一致,并做好向后兼容(不复用已废弃的编号)。
⚠️ 使用说明与注意事项
已复制
📖关于「Protobuf 解析器」 ▼

📝工具简介

Protobuf 解析器。专为开发者打造的在线工具,纯前端运行,代码不离开浏览器。