首页 > Web开发 > 详细

【解决了一个小问题】golang protocol buffers 3中去掉json标签中的omitempty

时间:2020-05-20 11:00:48      阅读:916      评论:0      收藏:0      [点我收藏+]

参考了这篇帖子:golang protobuf从生成的json标记中删除omitempty标记

由于是在windows上开发,因此写了一个python脚本来解决:

remove_tag.py

import sys

def main():
    argc = len(sys.argv)
    if argc<2:
        print(‘usage:%s <xxx.go>‘%sys.argv[0])
        return
    f = open(sys.argv[1], ‘rb‘)
    if not f:
        print("open file error:%s"%sys.argv[1])
        return
    s = f.read().decode(‘utf-8‘)
    f.close()
    s = s.replace(‘,omitempty‘, ‘‘)
    #
    f = open(sys.argv[1], ‘wb‘)
    f.write(s.encode(‘utf-8‘))
    f.close()
    print(‘ok‘)

if __name__==‘__main__‘:
    main()

然后生成pb.go的bat文件这样写:
gen_pb.bat

protoc --plugin=protoc-gen-go.exe --go_out=../ *.proto
python remove_tag.py ../src/pb/interface.pb.go

【解决了一个小问题】golang protocol buffers 3中去掉json标签中的omitempty

原文:https://www.cnblogs.com/ahfuzhang/p/12922283.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!