1天精通Apipost--全网最全gRPC调试和智能Mock讲解!

2023-05-16

gRPC 接口调试

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期望。

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调试-校验返回结果】

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

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

1天精通Apipost--全网最全gRPC调试和智能Mock讲解! 的相关文章

随机推荐

  • ▲什么是类?类有什么作用?

    目录 一 什么是类 xff1f 二 类与对象是什么关系 xff1f 三 类和结构体有什么区别呢 xff1f 四 如何创建一个类 五 如何创建一个类的对象 1 对象的创建 2 创建对象的初始化 1 默认构造函数 2 普通构造函数 3 复制构造
  • 【STL】vector容器如何使用?

    文章目录 前言vector的理解vector的成员类型vector的创建vector的迭代器vector的容量vector元素访问vector的元素修改 前言 上篇博客简述了string类 xff0c 实际上就是一个用来装字符的容器 xff
  • 2022/4/9-蓝桥杯C++B组题解-G题-积木画

    宽为1 1种 xff1e a 1 61 1 宽为2 2种 xff1e a 2 61 2 宽为3 先排最左边2列 种数a 2 避免重复情况下 xff0c 排最右边1列 钟数1 这个情况种数a 2 1 61 2 先排最左边1列 种数a 1 避免
  • 动态规划算法

    一 前言 动态规划是一种常用的算法 xff0c 在算法领域十分重要 xff0c 但对于新手来说 xff0c 理解起来有一定的挑战性 xff0c 这篇博客将明确步骤来一步一步讲解动态规划到底该如何理解与运用 二 解析动态规划算法 1 特点 把
  • 常见背包问题

    一 前言 若你想学习或正在学习动态规划 xff0c 背包问题一定是你需要了解的一种题型 xff0c 并且大多数人最初都是从背包问题入坑进而打开动态规划这一大门 背包问题分为多种 xff0c 你可以先掌握最常见的主要是三类 xff1a 01背
  • 如何配置ublox ZED-F9P 高精度模块+Ntrip DTU 网络电台(连接千寻/CORS/自建站)实现网络RTK定位

    格林恩德F9P RTK模块 xff0c 集成高精度板卡 ZED F9P 可同时接收GPS 北斗 xff0c GALILEO GLONASS 卫星系统的L1 L2频点 xff0c 结合高精度天线一体化设计 xff0c 体积小 xff0c 重量
  • 快速入手优先队列

    一 理解优先队列 标准模板库 xff08 Standard Template Library STL C 43 43 功能强大 xff0c 为开发者提供了标准模板库 xff0c 其中封装了很多实用的容器 容器可以理解成能够实现很多功能的系统
  • dfs和bfs能解决的问题

    一 理解暴力穷举之dfs和bfs 暴力穷举 暴力穷举是在解决问题中最常用的手段 xff0c 而dfs和bfs算法则是这个手段的两个非常重要的工具 其实 xff0c 最简单的穷举法是直接遍历 xff0c 如数列求和 xff0c 遍历一个数组即
  • C语言中给指定的内存地址赋值(通过指针)

    应用中的实际问题 xff1a 通过I2C接口发送到MCU一个地址数据 xff08 unsigned char AdData xff0c 一个待写入数据 xff08 unsigned char DaData 希望将DaData的值写到MCU内
  • ubuntu 14.04+indigo环境下dashgo d1+lms100运行环境搭建建图

    1 设置用户的串口读取权限 sudo usermod a G dialout your user name your user name替换为实际用户名 2 安装ROS依赖包 sudo sh c 39 echo 34 deb http pa
  • L298N双路驱动直流电机方案(支持PWM+正反转)

    目录 写在前面 xff08 吐槽吐槽 xff09 正文 最后 写在前面 xff08 吐槽吐槽 xff09 我想要驱动两个直流电机 直流电机 xff0c 说白了 xff0c 就是那种小马达 xff0c 小时候玩四驱车时那种没有正负极的马达 x
  • 基于业务测试的增量代码覆盖率实现

    前言 xff1a 本文主要实现的功能是代码增量覆盖率 xff0c 且基于覆盖率已实现 xff0c 可拿到全量覆盖率结果的情况下 xff0c 给出的增量代码覆盖率方法实现 xff0c 虽然各类语言有差别 xff0c 但是实现的基本思路都是一致
  • 测试工程师进阶测试开发工程师

    黑盒测试 xff1a 没有开发基础的测试工程师通常由黑盒测试做起 xff0c 不过根据个人经验 xff0c 这部分工作依然会给我们带来很多经验性的东西 xff0c 比如熟悉浏览器特性 xff0c 熟悉公司业务流程 xff0c 业务知识 xf
  • 轻量级接口自动化测试工具

    相信所有公司在起步自动化的时候做的都是接口自动化 xff0c 为什么呢 xff1f 理由很简单 xff0c 接口自动化复用性强 xff0c 易维护 xff0c 他的产出效率要远远高于UI自动化 xff0c 想想如果你的公司有成百上千的接口
  • JAVA实现HTTPS协议POST请求JSON报文

    HTTPS和HTTP的区别 超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息 HTTP协议以明文方式发送内容 xff0c 不提供任何方式的数据加密 xff0c 如果攻击者截取了Web浏览器和网站服务器之间的传输报文 x
  • Jmeter之JAVA Request的应用

    当我们使用Jmeter进行接口测试的时候 xff0c 我们一定会遇到一个问题 xff0c 那就是如果这些接口不是http协议的 xff0c 是经过封装以后的接口 xff0c 用Jmeter该怎么解决呢 xff1f 当你想到这个问题 xff0
  • FreeRTOS例程3-串口中断接收不定长的数据与二值信号量的使用

    FreeRTOS例程3 串口中断接收不定长的数据与二值信号量的使用 知乎 zhihu com
  • 使用airtest实现UI自动化之环境搭建

    1 xff0c 安装python python版本为3 7 1 2 xff0c 安装airtest xff0c pocoui模块 在安装时碰到的问题 xff1a 1 xff09 使用pip命令报错 xff0c 报SSL证书无法识别错误 解决
  • HTTP Digest Authentication在实际应用中的问题

    作者 xff1a 老王 Basic认证实际上是明文传递密码 xff0c 所以 RFC2617里定义了Digest认证以取代它 xff0c 其计算方法如下 xff1a 其中HA1计算方法为 xff1a 如果qop选项的值为auth xff0c
  • 1天精通Apipost--全网最全gRPC调试和智能Mock讲解!

    gRPC 接口调试 grpc 作为一个老程序员 xff0c 最近公司技术架构用到了gPRC xff0c 但国内很少有支持这个的工具 xff0c 大部分都只是支持http 由于我同时也是Apipost骨灰级用户 xff0c 于是就在他们官网的