背景
有2个微服务A和B,在A微服务中引用了B的proto,也就是请求A服务,A服务调用B服务的内容,并且修改了其中一个message中的字段,修改的proto文件message的内容如下:原来的内容是int32 shop_id = 2 [(validate.rules).int32.gt = 0];
message DeleteAdReq {
int32 id = 1;
int32 shop_id = 12 [(validate.rules).int32.gt = 0];
}
调用A的时候,没有问题,可以拿到shop_id这个字段,但是传到B服务的时候,B服务接收到是12,不是shop_id,可以看下面的截图:上面的框表示,没有手动shop_id,而是shop_id变成12了。
![记录一次引用其他微服务的proto文件,修改了message 中的字段的问题](https://wsppx.cn/wp-content/themes/justnews/themer/assets/images/lazy.png)
解决方式
拷贝proto后不要修改
原创文章,作者:站长,如若转载,请注明出处:https://wsppx.cn/1382/%e7%bd%91%e7%bb%9c%e5%bc%80%e5%8f%91/
![微信扫一扫](https://wsppx.cn/wp-content/uploads/2021/06/WechatIMG90.jpeg)
相关推荐
-
python后端开发面试-语言基础篇
Python是动态语言还是静态?强类型还是弱类型? python 是动态语言,怎么区分呢?关键看类型检测是在运行时检查还是编译时检查,Python是运行时检查,所以是动态语言,像j…
-
面试题:mysql中自己实现自增id
面试官其实想考察的是如何实现分布式趋势自增ID。在mysql中如果给字段增加auto_increment属性,但是出现分库分表分布式的场景,那么单表的自增id并不少全局自增。 ID…
-
golang net http一个低级错误
错误信息 原因 在go中http/net不像python的requests,封装的没有那么全,默认没有加body类型。 解决方式 request.Header.Set(“…
-
go微服务一个错误:rpc error: code = Unimplemented desc = unknown service xxx
前言:当你的微服务需要连接其他的人的微服务,他会给你提供一个proto文件,当你调用他们的方法的时候,一直报错误:,一开始以为是服务地址写错了。后面查了一下,是go 语言中,pro…
-
记录一次go mod tidy/go get安装私库错误信息
执行语句 go get -u codeup.aliyun.com/xxxx/commonlib 错误信息如下 解决方式 问题原因是没有权限访问这个,如果是阿里云的codeup平台,…
-
Python通过mac地址唤醒电脑
需求 家中nas需要定时唤醒 远程在外唤醒家中的电脑 直接上代码 说明 mac地址可以在自己的路由器中获取 网络唤醒,需要被唤醒的机器主板支持网络唤醒,记得在bios设置 通过外网…
-
grpc请求超时处理
错误描述 grpc默认超时时间是1s,有些框架是500ms,当超时了会报如下错误: 客户端 client连接 controller 服务端增加超时 controller
-
go协程中,main中无法捕获子协程的panic
在go中,虽然协程很好用,但是需要注意捕获他的异常,不如在生产环境中,子协程panic了,你的整个服务都会挂掉 错误示例 正确用法
-
记一次Proto Http请求报错问题:unKnow error: proto: (line 1:9): invalid value for int32 type: 100100013100
背景 kratos支持rpc和http方式进行通信,由于不同集群,不能进行内网通信,最终还是用http的方式,由于部门用的都是kratos,因此可以不用修改原来的通信方式,只是将之…