记一次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/
相关推荐
-
docker教程系列之docker怎么用
前面一章介绍了docker是什么,相信大家应该对docker有个初步对认识,docker的出现就是方便大家更加方便快捷的部署、迁移服务,也更好的隔离服务环境。既然大家都知道了doc…
-
golang sync.waitgroup的一个错误用法
close位置问题 错误用法 正确用法 close()得在wait前面 控制每秒并发多个 添加 time.Sleep(time.Second)
-
前端学习记录之一:函数式编程
本节回顾 1.函数式编程(核心思想:把运算过程抽象成函数) 2.函数相关复习(函数是一等公民,高级函数,闭包) 3.函数式编程基础(lodash,纯函数,柯里化,管道,函数组合) …
-
前端学习记录之二:异步编程
ps:只是针对看的某个课程做的一个简短笔记,方便后续自身复习,有时候逻辑或者板书并不是那么清晰,知识面可能也不全。有合适的机会后面会根据自己看的书籍、资料等完善和补充完善细节。 概…
-
记录一次引用其他微服务的proto文件,修改了message 中的字段的问题
背景 有2个微服务A和B,在A微服务中引用了B的proto,也就是请求A服务,A服务调用B服务的内容,并且修改了其中一个message中的字段,修改的proto文件message的…
-
面试xx资本(私募基金)Python高级工程师
面试的问题都比较常见,我没有准备好。下面的题目答案仅供参考。今天二面过了,给了offer。 面试体验一般,hr不够热情,相比大点的公司来讲,没有提前通知面试,面试官上来就直接问问题…
-
Leecode – 反转单链表
原题 输入[1,2,3,4,5] 输出[5,4,3,2,1] https://leetcode-cn.com/problems/reverse-linked-list/ 解答 思路…
-
前端面试题整理(持续收集,后期补充答案)
HTTP协议相关 HTTP建立连接之tcp三次握手 HTTP断开连接之tcp四次挥手 缓存:强缓存与协商缓存 网络七层协议 浏览器输入一个网址,到页面展示这中间经历了什么? HTT…
-
python后端开发面试-垃圾回收
python垃圾回收机制是以引用计数为主,标记清除,分代回收为辅。 引用计数 在cpython中,引用计数的数据结构是这样的 ob_refcnt是记录对象被引用的次数,如果值为0,…