记一次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 是一个开放源代码软件,是一个开放平台,用于开发应用、交付(shipping)应用、运行应用。 Docker允许用户将基础设施(Infrastructu…
-
前端学习记录之一:函数式编程
本节回顾 1.函数式编程(核心思想:把运算过程抽象成函数) 2.函数相关复习(函数是一等公民,高级函数,闭包) 3.函数式编程基础(lodash,纯函数,柯里化,管道,函数组合) …
-
面试题:mysql中自己实现自增id
面试官其实想考察的是如何实现分布式趋势自增ID。在mysql中如果给字段增加auto_increment属性,但是出现分库分表分布式的场景,那么单表的自增id并不少全局自增。 ID…
-
Leecode – 反转单链表
原题 输入[1,2,3,4,5] 输出[5,4,3,2,1] https://leetcode-cn.com/problems/reverse-linked-list/ 解答 思路…
-
go协程中,main中无法捕获子协程的panic
在go中,虽然协程很好用,但是需要注意捕获他的异常,不如在生产环境中,子协程panic了,你的整个服务都会挂掉 错误示例 正确用法
-
面试万科物业-高级Python
一共四轮面试,一面基础面试,体验还行,比较轻松,二面(深度技术面试)和三面(项目稳定性)跑过去既然电话面试?我在家不能电话面试吗?来回3个小时,我真的。。 四面是Hr总监面试,视频…
-
构建自己的脚手架过程大致记录
脚手架就是在启动的时候询问一些简单的问题,并且通过用户回答的结果去渲染对应的模板文件。 工作流程: 1.根据命令行交互询问用户问题 2.根据用户回答的结果生成文件 脚手架的简单雏形…
-
golang net http一个低级错误
错误信息 原因 在go中http/net不像python的requests,封装的没有那么全,默认没有加body类型。 解决方式 request.Header.Set(“…