热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

更改包装是否会使用protobuf破坏现有客户?

如何解决《更改包装是否会使用protobuf破坏现有客户?》经验,为你挑选了1个好方法。

如果我改变

syntax = "proto3";

package a.v0;

message HtmlStore{
    string html = 1;
}

syntax = "proto3";

package a;

message HtmlStore{
    string html = 1;
}

我有一个返回protobuf的python API。现有客户端正在使用该API。我想更改某些元素的protobuf定义,并且想知道它是否会破坏现有客户?



1> Marc Gravell..:

注意:如果您使用的是JSON编码,则所有选择均不适用。

如果您使用的是二进制编码,package通常不会有线格式的一部分- 除非您已使用此google.protobuf.Any功能。

因此,假设您还没有使用过Anypackage就发送的内容而言,更改将会完全不可见,并且不会影响任何人。

然而!如果他们收到.proto的更新版本并在其生成过程中运行代码生成,则其先前工作的代码可能会停止编译-要求他们.v0从引用这些类型的代码中删除。

电线上发送的唯一内容是字段号(在情况下为1 html),电线类型(在html- 情况下为长度前缀:电线类型2)和实际值。您还可以安全地重命名HtmlStorehtml(在相同条件下重命名Any)。


推荐阅读
  • gRPC框架学习:2、ProtocolBuffers学习文章目录gRPC框架学习:2、ProtocolBuffers学习1.前言2.定义消息类型(1). ... [详细]
  • golang基础-protobuf使用,Go语言社区,Golang程序员人脉社 ... [详细]
  • Google ProtoBuf的使用
    Google的protobuf太好用了,又小,读写又快跑步快慢受鞋的影响太大了,但是造鞋的工具研究起来还是很有难度的,百度 ... [详细]
  • 本文介绍了Hyperledger Fabric外部链码构建与运行的相关知识,包括在Hyperledger Fabric 2.0版本之前链码构建和运行的困难性,外部构建模式的实现原理以及外部构建和运行API的使用方法。通过本文的介绍,读者可以了解到如何利用外部构建和运行的方式来实现链码的构建和运行,并且不再受限于特定的语言和部署环境。 ... [详细]
  • Go Cobra命令行工具入门教程
    本文介绍了Go语言实现的命令行工具Cobra的基本概念、安装方法和入门实践。Cobra被广泛应用于各种项目中,如Kubernetes、Hugo和Github CLI等。通过使用Cobra,我们可以快速创建命令行工具,适用于写测试脚本和各种服务的Admin CLI。文章还通过一个简单的demo演示了Cobra的使用方法。 ... [详细]
  • (三)多表代码生成的实现方法
    本文介绍了一种实现多表代码生成的方法,使用了java代码和org.jeecg框架中的相关类和接口。通过设置主表配置,可以生成父子表的数据模型。 ... [详细]
  • protobuf 3教程
    本文主要分享【protobuf3教程】,技术文章【4、protobuf进阶】为【无休止符】投稿,如果你遇到Go微服务实战-电商系统相关问题,本文相关知识或能到你。protobuf3教程目 ... [详细]
  • protobuf 安装_protobuf详解
    protobuf详解一、什么是protobufprotobuf全称GoogleProtocolBuffers,是google开发的的一套用于数据存储,网络通信时用于协议编解码的工具 ... [详细]
  • 学习gRPC1.工作原理是什么
    什么是gRPCgRPC已经成为实现需要大规模快速运行的分布式软件系统的一项重要技术。简而言之,gRPC是一个API框架,它允许一个程序在互联网上的一个位置传递数据到另一个位置的另一 ... [详细]
  • 谷歌宣布在 Kotlin 中支持 Protocol Buffers 数据格式
    谷,歌,宣布,在,kotlin,中,支持,protocol,buf ... [详细]
  • Java自带的观察者模式及实现方法详解
    本文介绍了Java自带的观察者模式,包括Observer和Observable对象的定义和使用方法。通过添加观察者和设置内部标志位,当被观察者中的事件发生变化时,通知观察者对象并执行相应的操作。实现观察者模式非常简单,只需继承Observable类和实现Observer接口即可。详情请参考Java官方api文档。 ... [详细]
  • 我是GoogleProtobuf的新手。我想解决一个问题,但我无法在互联网上找到答案, ... [详细]
  • egret protobufjs安装使用
    先安装好nodeprotobufjsgithub地址:https:github.comdcodeIOprotobuf.js#installation安装:npminstallprotobufjs-g安装全局protobufjsnpm ... [详细]
  • 我正在尝试将一些索引和浮点值保存到tfrecords,并使用tf.data ... [详细]
  • https:github.comprotocolbuffersprotobufreleases报错:Pleasespecifyeither:•ago_packag ... [详细]
author-avatar
何博弘朗
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有