ToB企服应用市场:ToB评测及商务社交产业平台

标题: Protobuf Options 自定义插件使用 [打印本页]

作者: 民工心事    时间: 2023-2-18 20:45
标题: Protobuf Options 自定义插件使用
ProtoOptions

简介

使用protobuf的options,我们可以添加我们自己的option,然后根据option生成代码添对proto中的参数进行处理,例如添加message的校验。
extension

能够对已经存在的消息进行扩展,这种扩展只是动态增加字段,而没有增加接口。
例子:扩展protobuf的FieldOptions
  1. message MyFileOptions {
  2.   optional bool ok = 1;
  3. }
  4. // 扩展protobuf的MessageOptions
  5. extend google.protobuf.FileOptions {
  6.   optional MyFileOptions my_file_option = 51234; // 取一个自定义不重复值
  7. }
复制代码
protobuf options

实现自定义option

扩展实现
  1. mkdir protoc-gen-my-option
  2. cd protoc-gen-my-option
复制代码
实现一个FileOptions
[code]mkdir proto# 在proto中实现自己的option,可以将EOF的内容拷贝到proto/my_option.proto中echo > proto/my_option.proto




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4