全网最全gRPC调试和智能Mock讲解

gRPC 接口调试

grpc

作为一个老程序员,最近公司技术架构用到了gPRC,但国内很少有支持这个的工具,大部分都只是支持http。由于我同时也是Apipost骨灰级用户,于是就在他们官网的问答社区里提反馈,希望能支持一下gRPC函数调用,结果果然7.0版本我一更新,就看到Apipost已经支持gRPC了。

grpc调试工具

第一步:导入proto文件

导入proto文件后我们可以看到目录区有导入的server和method

grpc在线调试工具

第二步:调试方法

选择某个server下具体的方法,填写入参和服务地址,就可以直接调用了!还可以选择证书。

grpc在线调试工具 Apipost

Apipost跟postman的gRPC对比:

整体来说操作简单,使用起来很方便,跟 postman 比较起来好用多了。postman 如果不是经常用需要摸索一番,你根本不知道它的使用流程是什么样的。所以对于国内研发人员来说,很值得推荐使用!

apipost 对比 postman

Apipost 上手指数:★★★★☆

Postman 上手指数:★★☆☆☆

其他类型接口调试

除了对 grpc 的支持,Apipost 同样支持 http、websocket、socketjs、socketIO 类型的接口调试,可以说已经非常全了。

看到这里,如果你仅仅以为Apipost 只能做接口调试,那就错啦,除了上面的,Apipost v7 还支持了 API设计 和 API调试校验 2 大功能。

Api设计和智能Mock期望

作为后端,被前端催着要接口已成为工作中的添堵日常;而作为前端,联调时发现自己Mock的数据和后端对不上,更是令人崩溃。

针对于此,在后端还未提供真实接口的情况下,先拿到一份模拟响应的数据结构,就显得非常重要,也就是我们所说的Mock。那么如何写出这种清晰规范,又能实时更新的动态Mock期望数据呢?当然不是自己动手,我们可以使用Apipost这款研发协同神器,来快速自动生成一篇理想状态的Mock期望数据!

API设计——为API文档和数据Mock而生

Apipost7.0梳理并规范了研发环节的工作流程,其中关于接口Mock期望以及API文档的产出,我们主要在“API设计”中完成。

【API设计-主页面】

1、填写基本信息

我们可以在“API设计”中设计并填写接口的基本信息,包括接口请求方式、URL、请求参数以及返回的响应Mock数据期望等,与API调试模块共用同一份数据源。在Apipost7.0版本,我们还支持了Digest auth、OAuth 1.0、Hawk Authentication、AWS Signature、NTML Authentication、Akamai EdgeGrid六种认证方式。

【API设计-请求区】

2、添加Mock响应期望

如下图,我们可以通过可视化的操作界面快速生成我们想要的响应Mock期望。

添加Mock响应期望

Apipost支持自定义期望的名称、状态码、内容格式(JSON、XML、 HTML、 Raw、 Binary)、触发条件以及在此基础上的一系列高级设置。

比如我们可以设置string、number、integer、array、object、Boolean、null、any八种字段类型,并支持定义该字段数据结构的具体细节,具体使用方法在这里就不赘述了,感兴趣的小伙伴可以去官网查看Apipost7.0版本的使用文档。

【API设计-新建Mock期望】

设计好期望后,会有一个期望预览,同时支持刷新生成新的数据,可以说是非常灵活方便了。

【API设计-Mock期望预览】

3、进阶:智能Mock期望

在同一个接口里,由于我们对不同场景下返回的数据结构期望不同,我们可以通过设置多个期望的方式,来满足这个需求。

设置好一堆期望后,下一步就该一个一个选期望,一个一个开始校验了吧?当然你也可以这样,但Apipost愿意做的更进一步,最大程度提升我们的工作效率,于是就有了“智能期望”。我们可以在智能Mock期望中填写一些触发条件,开启后,Apipost会根据已设置的触发条件,自动匹配旗下的参数判断规则,若满足条件,则会启用预设的期望。

【API设计-智能Mock期望 】

保存后,就会自动生成Mock URL链接。

当想要分享mock URL时,Apipost支持本地和云端两种方式分享,我们可以自定义是否要分享在云服务上进行的mock,灵活保证数据安全。

【API设计-Mock url】

4、预览/编辑/分享文档

我们在API设计模块所设置的全部内容,都可以自动生成一篇接口文档,不仅如此,我们还支持了文档编辑功能,最大程度保证交付出去的文档,就是你心中所想的样子。

【API设计-预览、编辑文档 】

在分享的时候,我们还可以自定义文档的权限和有效期,并且支持内网分享,保证数据安全。

【API设计-分享文档 】

Api调试和响应结果校验

API调试:接口调试+校验返回结果

下面这个页面是不是很眼熟?Apipost7.0保留了6版本的基本分区,老用户升级后不会觉得陌生,只会发现想要的功能已经都在里面了。

【API调试-主页面】

1.请求区

请求区相比6版本并未做太大改变,在API调试模块中,如果想要更改API设计中的内容,可以点击【去设计】按钮,将会直接进入API设计页面,并打开当前接口。

【API调试-请求区】

2.响应区

响应区内默认返回实时响应结果,点击发送按钮后,如果有数据返回,则会显示返回数据,响应时间,响应码,Cookie等。我们可以选择在建立好的期望中生成示例,也可以直接新建一个示例。

【API调试-请求区】

看到这里有的用户就会问:“如果我只想新建一个示例,还非得去API设计里先新建一个期望吗?”答案是当然不用啦,我们不会绑架用户非按我们的规矩来,Apipost是高度灵活自定义的,在为您提供标准化的工作流程基础上,也支持您多种工作场景下的使用。

我们可以在API调试模块下新建一个示例,该示例与API设计中的期望是一一对应关系,每新建一个示例头,API设计模块中都会自动新建一个与之对应的期望,不用您亲手设置,这边都给自动生成好。

【API调试-新建示例】

API响应结果的自动校验

API调试中的响应示例,与API设计中的Mock期望是一一对应关系,每新建一个示例头,都会自动新建一个与之对应的Mock期望。同理,在API设计中建立的响应Mock期望,可以被引用到API调试的响应示例中,并可以通过校验功能,判断该响应Mock期望的响应结果是否符合预期。

如Mock期望内容与响应内容一致,则会提示校验通过,即该接口返回的响应内容符合期望,当两者不一致时,会提示具体错误信息并标明具体位置,方便我们及时定位问题。

【API调试-校验返回结果】

最后,不得不说,技术更新太快了,真是不进步不行呀!

posted @ 2022-09-08 03:40  奔四少年  阅读(284)  评论(0编辑  收藏  举报