记一次Proto Http请求报错问题:unKnow error: proto: (line 1:9): invalid value for int32 type: 100100013100
背景
kratos支持rpc和http方式进行通信,由于不同集群,不能进行内网通信,最终还是用http的方式,由于部门用的都是kratos,因此可以不用修改原来的通信方式,只是将之前rpc创建连接的方式改为http,
原来的连接方式:transGrpc.DialInsecure修改为http.NewClient
问题:
错误提示也很明显,返回的类型不能用int32转化,对方的接口直接用postman请求没有问题,因为我们的proto文件是相同的,那么请求参数返回参数都是一致的,通过检查参数得知,这个100100013100 是返回参数,而我们的返回参数接受的code刚好是int32,修改为64就没有这个问题。
但是,但是,如果我们的proto文件是同一个仓库地址,那么意味着我修改,他们那边也会修改,因此这种方式并不好。那只能修改code为int32的值了。
原创文章,作者:站长,如若转载,请注明出处:https://wsppx.cn/2504/%e7%bd%91%e7%bb%9c%e5%bc%80%e5%8f%91/
![微信扫一扫](https://wsppx.cn/wp-content/uploads/2021/06/WechatIMG90.jpeg)
相关推荐
-
前端学习记录之三:手写Promise源码
一、初始化版本 1.Promise 就是一个类 在执行这个类的时候 需要传递一个(回调函数)执行器进去 执行器立即执行 2.Promise有三种状态 fulfilled rejec…
-
微服务:搭建consul注册中心
macos安装 linux amd系统安装 单节点运行 运行多个节点 service 节点 node节点 运行 管理页面 http://192.168.232.130:8500/u…
-
http/https协议面试题
如何你的简历上写了熟悉http协议的,那就要准备这个面试了 http是长连接吗? 在http1.0的时候是短连接,每次与服务端通信都需要建立新的连接,也就是三次握手 在http1….
-
docker教程系列之docker怎么用
前面一章介绍了docker是什么,相信大家应该对docker有个初步对认识,docker的出现就是方便大家更加方便快捷的部署、迁移服务,也更好的隔离服务环境。既然大家都知道了doc…
-
面试xx资本(私募基金)Python高级工程师
面试的问题都比较常见,我没有准备好。下面的题目答案仅供参考。今天二面过了,给了offer。 面试体验一般,hr不够热情,相比大点的公司来讲,没有提前通知面试,面试官上来就直接问问题…
-
Python通过mac地址唤醒电脑
需求 家中nas需要定时唤醒 远程在外唤醒家中的电脑 直接上代码 说明 mac地址可以在自己的路由器中获取 网络唤醒,需要被唤醒的机器主板支持网络唤醒,记得在bios设置 通过外网…
-
python2使用virtualenv报错 ImportError: No module named importlib_metadata
环境 centos python2.7.15 复现 解决方法 pip install –upgrade setuptools 这类错误 升级pip
-
golang基础面试题
自己除了找python相关的岗位,还想找一下go的岗位,有转语言的倾向。但我自由半年的项目经验。 谈谈对defer的认识 defer用于资源的释放,会在函数返回之前进行调用,它会经…