01

此前时不时会有一些研发小伙伴和我诉苦,说很多企业由于人力财力限制或者需求不强,会直接购买使用第三方的开放API,这样一来,

一则由于开放项目不是量身定制的,寻找自己合适的接口也要搜索调研蛮多时间。
二则这种合作方式下 API提供者通常只会提供调用权限和一份接口文档,研发童鞋调试的时候只能手动一个个把接口数据复制到调试工具,费时费力。

综合上述两大痛点,我给大家推荐的解决方案是的一个叫API Hub的项目。

GitHub 上面也有类似于public APIs等收录了开放API ,但只做了数据收录的工作,接口调试工具则只提供了调试功能,两者兼而有之的很少。

而API Hub的革新之处在于它不仅汇总整理了热门的开放 API 接口,更重要的是还提供了一系列调试、mock,测试等功能,开发者直接在API Hub上面比对选择合适的API,接着直接在API Hub中发起调试,整个流程一气呵成,省时省力。

因此这个API Hub创意不赖,值得花点篇幅介绍给大家。

02

API Hub是国产API管理工具Apifox里面相对独立的模块。

Apifox 支持API文档管理,API 调试,API Mock,API 自动化测试,是一个后端,前端,测试都能用的一站式接口管理平台,因此它官网上写的slogan就是 Apifox=Swagger+Postman+Mock+Jmeter。

而API Hub 收录了国内各大厂商热门的API 开放项目,如企业微信API,快手开放API,抖音开放API,目前还在持续收录中;另一方面它依托于Apifox,能提供对开放api 进行调试、mock等功能。

对于想要接入开放项目的开发者来说,便利是肉眼可见的:

  1. 针对特定的需求,开发者可快速在API Hub中搜索到类似功能的api项目,进行比对,筛选出最匹配自己项目和需求的API,提高筛选效率

  2. 开发者可以直接在API Hub中发起调试

  3. API Hub中接口和文档是一体的,可以直接查看接口描述和功能

  4. API Hub中的开放项目还可以无须配置进行mock,满足异常场景调试的需求。

下面我给大家展开讲讲要怎么用。

03

绝大多数的开放项目都需要你先申请调用权限,有些开放API可以直接在官网上按照它的提示申请,获得apikey、client_secret等值;有些则需要企业走购买流程,对于想要练手的可以找前者,对于企业开发者后者可以交给商务去搞定。

获取到调用权限后,就可以开始调试了。在API Hub里,可以直接查看接口文档,或者直接进入项目发起调试。

可以直接查看某个接口的接口文档详情,再对该接口发起调试:

也可以直接进入项目的调试界面:

项目调试界面

04 API 调试

和市面上的老牌调试工具Postman相比,Apifox毫不逊色——Postman支持的功能它都能支持,并且Apifox还提供了支持可视化断言,连接数据库,调用外部函数与脚本,支持多种语言,环境变量设置等功能,调试起来也很快捷方便。

支持多种鉴权方式: 前后置操作支持多种辅助功能: a.支持可视化断言,多个接口调用、参数复杂的场景下便于判断返回数据是否存在问题;

b.支持提取变量保存到项目全局变量中,能够实现接口之间的数据传递

c.支持链接数据库,可以直接使用企业的业务数据进行调试,调试的结果更加真实

d.支持自定义脚本,满足开发者的各类型的特定需求,此外也支持调用Java,Python,PHP等130种编程语言编写的外部程序;

当然,这确保电脑已经安装相应程序运行需要的java,Python,nodejs等环境。

05 API mock

前端界面往往需要对一些后端异常返回场景做异常兼容,但开放API对这种异常场景的调试支持时不足的。 这时候可以使用 Apifox提供的API Mock功能。 调试的时候直接使用mock服务,在高级mock-新建期望中设置body/query等参数为某个值时,接口返回你需要的特定数据

保存成功的期望会显示到高级mocktab下,调试前端界面时直接使用快捷调试功能即可操作 Apifox提供的mock功能非常强大,它内置了邮箱,身份证等常用业务数据的mock规则,使用的时候直接选择即可mock出高度真实的业务数据。

如果你的项目数据有特定的数据类型,可以自己自定义mock规则,在项目设置-mock设置中可通过通配符或正则表达式构造出你需要的数据来调试。

06 针对开放项目功提供者

如果你是开放项目的提供者,那么也可以申请把自己的开放API项目提交到API Hub中进行运营维护。

Apifox目前处于高速增长期,未来一旦用户量提升到某个量级,会给API Hub里的开放项目带来可观的曝光量。

而且Apifox的接口和文档是一体的,修改文档和接口能实时同步更新到调用这个开放API的所有开发者,避免了项目接口升级或迭代需要很多的沟通和告知工作。

另外 Apifox的可视化接口设计界面非常简单易操作,如果开发者想要这接在Apifox中设计接口,撰写文档,学习成本也非常低。

对于旧项目想要迁移到Apifox中进行维护,直接在项目设置--数据导入中导入swagger,postman等项目数据即可。

07 下载

在Apifox客户端内API Hub是独立出来的一个模块,下载安装完Apifox后即可使用:

API Hub也有网页版,不过网页版目前暂未支持mock服务,因此使用客户端体验会更好。

客户端下载地址:https://www.apifox.cn/
API Hub网页版地址:https://www.apifox.cn/apihub/

能直接调试的开放API?这个API Hub绝了的更多相关文章

  1. 开放数据接口 API 简介与使用场景、调用方法

    此文章对开放数据接口 API 进行了功能介绍.使用场景介绍以及调用方法的说明,供用户在使用数据接口时参考之用. 在给大家分享的一系列软件开发视频课程中,以及在我们的社区微信群聊天中,都积极地鼓励大家开 ...

  2. 用友云开放平台之API网关

    本文介绍选择API网关应考虑的几方面内容,API网关在微服务框架中的作用,API网关如何选型,用友云开放平台的API网关可以做什么. 随着互联网的快速发展,当前已步入移动互联.物联网时代.企业内部系统 ...

  3. [转]bigbluebutton中文社区 / 开放API / bbb API

    bigbluebutton中文社区 / 开放API / bbb API 创建会议 这个接口可以重复调用多次,而不会有副作用.这带来的好处就是能简化应用程序加会的流程,无论什么用户想要加会,都可以先创建 ...

  4. 开放接口/RESTful/Api服务的设计和安全方案

    总体思路 这个涉及到两个方面问题:一个是接口访问认证问题,主要解决谁可以使用接口(用户登录验证.来路验证)一个是数据数据传输安全,主要解决接口数据被监听(HTTPS安全传输.敏感内容加密.数字签名) ...

  5. XYIXY.COM短网址在线生成,快速、稳定、永久有效,免费开放网址缩短API接口。

    在PHP中使用API 要在PHP程序中使用API,您必须通过file_get_contents或cURL发送GET请求:两者都是可靠的方法,您可以直接复制下面的代码. <?php /**** S ...

  6. API & Web API

    The follow content refer refers to: Baidu Baike                  : https://baike.baidu.com/item/api/ ...

  7. Delphi常用API,API函数

    auxGetDevCaps API 获取附属设备容量 auxGetNumDevs API 返回附属设备数量 auxGetVolume API 获取当前卷设置 auxOutMessage API 向输出 ...

  8. 好的框架需要好的 API 设计 —— API 设计的六个原则

    说到框架设计,打心底都会觉得很大很宽泛,而 API 设计是框架设计中的重要组成部分.相比于有很多大佬都认可的面向对象的六大原则.23 种常见的设计模式来说,API 设计确实缺少行业公认的原则或者说设计 ...

  9. 浅谈API网关(API Gateway)如何承载API经济生态链

    序言 API经济生态链已经在全球范围覆盖, 绝大多数企业都已经走在数字化转型的道路上,API成为企业连接业务的核心载体, 并产生巨大的盈利空间.快速增长的API规模以及调用量,使得企业IT在架构上.模 ...

  10. 重构Web Api程序(Api Controller和Entity)续篇

    昨天有写总结<重构Web Api程序(Api Controller和Entity)>http://www.cnblogs.com/insus/p/4350111.html,把一些数据交换的 ...

随机推荐

  1. java 网络编程之Socket编程

      1.客户端代码 1 package com.gylhaut.socket; 2 3 import java.io.BufferedReader; 4 import java.io.IOExcept ...

  2. Net6Configuration & Options 源码分析 Part3 IOptionsMonitor 是如何接收到配置文件变更并同步数据源的

    配置源的同步 IOptionsMonitor 使用 //以下demo演示使用IOptionsMonitor重新加载配置并当重新加载配置是执行回调函数 var configuration = new C ...

  3. Android 12(S) 图形显示系统 - BufferQueue的工作流程(十)

    题外话 疫情隔离在家,周末还在努力学习的我  ..... 一.前言 上一篇文章中,有基本讲清楚Producer一端的处理逻辑,最后也留下了一个疑问: Consumer是什么时候来消费数据的?他是自己主 ...

  4. _u32定义

    驱动开发的原则: 能用__u32就最好用它,或者用u_int32_t之类的也可以,但不要直接用unsigned int等默认的数据类型.目的是让别人明白,你这个变量占多大内存. 原因: 1.你不能确定 ...

  5. vulhub漏洞环境搭建

    (搭建之前建议更换成阿里的源) 在纯净ubuntu中部署vulhub环境: 1.安装docker,并用docker -v命令验证安装结果: curl -s https://get.docker.com ...

  6. 航模电池平衡头接线,1S-6S原理图

    1-4S平衡头接线 S数代表几级锂电池串联,比如3S代表串联了3级,所以总电压为3*3.7V=11.4V.(每一级可能是多个电芯并联) 图源:百度贴吧 图源:5imx论坛 3S电池示例 B6充电器

  7. UVA1389 Hard Life (01分数规划+最大流)

    UVA1389 Hard Life (01分数规划+最大流) Luogu 题目描述略 题解时间 $ (\frac{\Sigma EdgeCount}{\Sigma PointCount})_{max} ...

  8. 【freertos】004-任务创建与删除及其实现细节

    前言 后面都是已动态内存任务为例来分析. 注意: 由于当前学习是在linux上跑的freertos,对于freertos底层相关接口,从demo工程来看,都是posix标准相关. 鉴于freertos ...

  9. 【Java面试宝典】你们线上应用的 JVM 参数有哪些?

    -server-Xms6000M-Xmx6000M-Xmn500M-XX:PermSize=500M-XX:MaxPermSize=500M-XX:SurvivorRatio=65536-XX:Max ...

  10. 我们如何监视所有 Spring Boot 微服务?

    Spring Boot 提供监视器端点以监控各个微服务的度量.这些端点对于获取有关应用程序的信息(如它们是否已启动)以及它们的组件(如数据库等)是否正常运行很有帮助.但是,使用监视器的一个主要缺点或困 ...