能直接调试的开放API?这个API Hub绝了
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等功能。
对于想要接入开放项目的开发者来说,便利是肉眼可见的:
针对特定的需求,开发者可快速在API Hub中搜索到类似功能的api项目,进行比对,筛选出最匹配自己项目和需求的API,提高筛选效率
开发者可以直接在API Hub中发起调试
API Hub中接口和文档是一体的,可以直接查看接口描述和功能
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等参数为某个值时,接口返回你需要的特定数据
保存成功的期望会显示到高级mock
tab下,调试前端界面时直接使用快捷调试功能即可操作 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绝了的更多相关文章
- 开放数据接口 API 简介与使用场景、调用方法
此文章对开放数据接口 API 进行了功能介绍.使用场景介绍以及调用方法的说明,供用户在使用数据接口时参考之用. 在给大家分享的一系列软件开发视频课程中,以及在我们的社区微信群聊天中,都积极地鼓励大家开 ...
- 用友云开放平台之API网关
本文介绍选择API网关应考虑的几方面内容,API网关在微服务框架中的作用,API网关如何选型,用友云开放平台的API网关可以做什么. 随着互联网的快速发展,当前已步入移动互联.物联网时代.企业内部系统 ...
- [转]bigbluebutton中文社区 / 开放API / bbb API
bigbluebutton中文社区 / 开放API / bbb API 创建会议 这个接口可以重复调用多次,而不会有副作用.这带来的好处就是能简化应用程序加会的流程,无论什么用户想要加会,都可以先创建 ...
- 开放接口/RESTful/Api服务的设计和安全方案
总体思路 这个涉及到两个方面问题:一个是接口访问认证问题,主要解决谁可以使用接口(用户登录验证.来路验证)一个是数据数据传输安全,主要解决接口数据被监听(HTTPS安全传输.敏感内容加密.数字签名) ...
- XYIXY.COM短网址在线生成,快速、稳定、永久有效,免费开放网址缩短API接口。
在PHP中使用API 要在PHP程序中使用API,您必须通过file_get_contents或cURL发送GET请求:两者都是可靠的方法,您可以直接复制下面的代码. <?php /**** S ...
- API & Web API
The follow content refer refers to: Baidu Baike : https://baike.baidu.com/item/api/ ...
- Delphi常用API,API函数
auxGetDevCaps API 获取附属设备容量 auxGetNumDevs API 返回附属设备数量 auxGetVolume API 获取当前卷设置 auxOutMessage API 向输出 ...
- 好的框架需要好的 API 设计 —— API 设计的六个原则
说到框架设计,打心底都会觉得很大很宽泛,而 API 设计是框架设计中的重要组成部分.相比于有很多大佬都认可的面向对象的六大原则.23 种常见的设计模式来说,API 设计确实缺少行业公认的原则或者说设计 ...
- 浅谈API网关(API Gateway)如何承载API经济生态链
序言 API经济生态链已经在全球范围覆盖, 绝大多数企业都已经走在数字化转型的道路上,API成为企业连接业务的核心载体, 并产生巨大的盈利空间.快速增长的API规模以及调用量,使得企业IT在架构上.模 ...
- 重构Web Api程序(Api Controller和Entity)续篇
昨天有写总结<重构Web Api程序(Api Controller和Entity)>http://www.cnblogs.com/insus/p/4350111.html,把一些数据交换的 ...
随机推荐
- 通过rem自适应屏幕尺寸
通过rem自适应屏幕尺寸 常用的前端单位 px px就是pixel的缩写,设备分辨率,物理像素 pt pt就是point的缩写,逻辑分辨率,逻辑像素 em 参考物是父元素的font-size,具有继承 ...
- idea导入gitee下载的项目文件
前一段时间在学习javaWeb时想要把gitee中的下载的项目在本地环境中跑一遍,然后根据效果再自己做出来. 但是当导入到IDEA中,配置完tomcat后一直报404错误.404是学习javaweb阶 ...
- python+pytest接口自动化(12)-自动化用例编写思路 (使用pytest编写一个测试脚本)
经过之前的学习铺垫,我们尝试着利用pytest框架编写一条接口自动化测试用例,来厘清接口自动化用例编写的思路. 我们在百度搜索天气查询,会出现如下图所示结果: 接下来,我们以该天气查询接口为例,编写接 ...
- git tag、gitignore和git撤销提交
前言 最近在git的使用过程中遇到了一些新的问题,所以写下来方便自己回忆. git tag 打标签 git tag -a v1.00 -m "注释" git tag 打标签命令 - ...
- 多数据源并且数据库类型不同的情况下PageHelper的使用
一.问题来源 最近开发一个项目需要依赖两个数据源,数据源类型分别为oracle和postgresql,代码中使用com.github.pagehelper分页插件进行分页,代码运行过程中postgre ...
- 请说说你对Hibernat的理解?JDBC和Hibernate各有什么优势和劣势?
Hibernate是一个轻量级的持久层开源框架,它是连接Java应用程序和关系数据库的中间件,负责Java对象和关系数据之间的映射.Hibernate内部对JDBC API进行了封装,负责Java对象 ...
- springMVC和struts2的区别有哪些?
(1)springmvc的入口是一个servlet即前端控制器(DispatchServlet),而struts2入口是一个filter过虑器(StrutsPrepareAndExecuteFilte ...
- jQuery--事件案例(鼠标提示)
1.文字提示 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://ww ...
- 用maven建立一个工程2
下载之后把下载的包解压出来
- 学习Apache(五)
apache目前主要有两种模式:prefork模式和worker模式: 1)prefork模式(默认模式) prefork是Unix平台上的默认(缺省)MPM,使用多个子进程,每个子进程只有一个线程 ...