建议先了解一下 protobuf 原理,类型本来就是固定的,要实现定义好,tlv 格式,读到 tag 就知道是对应的什么类型了。你想 pb 转 json 的话,首先要有数据文件,然后还需要 1. proto 生成的类自定义代码类文件,这样这个类包含 tag 和类型,然后走反射转 json 。 2. 有 proto 文件,可以不生成代码,可以直接走 proto 反射,golang 就有反射库[protoreflect]<https://github.com/jhump/protoreflect> ,其他语言自己找