热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

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

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

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

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



推荐阅读
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • k8s入坑之路(14)scheduler调度 kubelet管理及健康检查
    kubelet主要功能Pod管理在kubernetes的设计中,最基本的管理单位是pod,而不是container。pod是kubernetes在容器上的一层封装,由一组运行在同一 ... [详细]
  • 分布式服务框架和原理简章
    应用架构演进这里的架构演进应该是从服务化的角度来说,应该说随着业务发展,应用规模扩大,系统的一些公共服务就会抽取出来,独立开发,部署,维护,用来解决并发,扩展,维护的问题。传统垂直 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • Windows下配置PHP5.6的方法及注意事项
    本文介绍了在Windows系统下配置PHP5.6的步骤及注意事项,包括下载PHP5.6、解压并配置IIS、添加模块映射、测试等。同时提供了一些常见问题的解决方法,如下载缺失的msvcr110.dll文件等。通过本文的指导,读者可以轻松地在Windows系统下配置PHP5.6,并解决一些常见的配置问题。 ... [详细]
  • Voicewo在线语音识别转换jQuery插件的特点和示例
    本文介绍了一款名为Voicewo的在线语音识别转换jQuery插件,该插件具有快速、架构、风格、扩展和兼容等特点,适合在互联网应用中使用。同时还提供了一个快速示例供开发人员参考。 ... [详细]
  • flowable工作流 流程变量_信也科技工作流平台的技术实践
    1背景随着公司业务发展及内部业务流程诉求的增长,目前信息化系统不能够很好满足期望,主要体现如下:目前OA流程引擎无法满足企业特定业务流程需求,且移动端体 ... [详细]
  • 网络请求模块选择——axios框架的基本使用和封装
    本文介绍了选择网络请求模块axios的原因,以及axios框架的基本使用和封装方法。包括发送并发请求的演示,全局配置的设置,创建axios实例的方法,拦截器的使用,以及如何封装和请求响应劫持等内容。 ... [详细]
  • 如果说以比特币为代表的货币区块链技术为1.0,以以太坊为代表的合同区块链技术为2.0,那么实现了完备的权限控制和安全保障的Hyperledger项目毫无疑问代表着区块链技术3.0 ... [详细]
  • ASP.NET CORE 简介
    ASP.NETCore是一个跨平台的高性能开源框架,用于生成启用云且连接Internet的新式应用。使用ASP.NETCore,您可以:生成Web ... [详细]
  • ETCD介绍—etcd概念及原理方面分析
    etcd作为一个受到ZooKeeper与doozer启发而催生的项目,除了拥有与之类似的功能外,更专注于以下四点。简单:基于HTTPJS ... [详细]
  • 本文介绍了在Mac上安装Xamarin并使用Windows上的VS开发iOS app的方法,包括所需的安装环境和软件,以及使用Xamarin.iOS进行开发的步骤。通过这种方法,即使没有Mac或者安装苹果系统,程序员们也能轻松开发iOS app。 ... [详细]
  • 解决文件名过长下载失败问题的jQuery方案
    本文介绍了使用jQuery解决文件名过长导致下载失败的问题。原方案中存在文件名部分丢失的问题,通过动态生成隐藏域表单并提交的方式来解决。详细的解决方案和代码示例在文章中给出。 ... [详细]
  • MySQL中的MVVC多版本并发控制机制的应用及实现
    本文介绍了MySQL中MVCC的应用及实现机制。MVCC是一种提高并发性能的技术,通过对事务内读取的内存进行处理,避免写操作堵塞读操作的并发问题。与其他数据库系统的MVCC实现机制不尽相同,MySQL的MVCC是在undolog中实现的。通过undolog可以找回数据的历史版本,提供给用户读取或在回滚时覆盖数据页上的数据。MySQL的大多数事务型存储引擎都实现了MVCC,但各自的实现机制有所不同。 ... [详细]
  • 服务注册中心到底应该选AP模型还是CP模型?
    当下,分布式系统正变得越来越重要,大型网站几乎都是分布式的。分布式系统的最大难点,就是各个节点的状态 ... [详细]
author-avatar
乐在hhh其中
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有