本文最初发布于 hackernoon 网站,经原作者授权由 InfoQ 中文站翻译并分享。
市面上可用的 REST API 工具选项有很多,我们来看看其中一些开发人员最喜欢的工具。
API 定义
Swagger Editor 是图形可视化的流行选项。你可以使用 JSON 或 YAML 定义 API。此外,你可以为大多数相关技术(从 ASP.NET Core 和 Kotlin 到 Node.JS 和 Python)生成服务端或客户端存根。
Apicurio 是一个开源项目,简单而优雅,支持 JSON 和 YAML。它可以:
从源代码控制、文件和 URL 导入 API。
与你的 GitHub、GitLab 或 Bitbucket 帐户集成。
预览实时文档。
提供基于 Open API 标准设计 API 的可视化编辑器(无需任何编码技能!)。
测试和监视
Postman 是一个直观且井井有条的桌面工具,用于创建、测试和监视 API。这是我个人最喜欢的工具之一,因为它是我用来测试自己 API 的第一个工具,而且学习它的过程再顺利不过了。该产品功能全面,涵盖了从创建到测试和监视的 API 开发流程。
使用 Postman,你可以:
添加 mock 服务器。
在环境设置之间切换。
生成文档。
应用自定义样式。
中型和大型团队会很喜欢它的个人和团队工作区,以及分叉和合并功能,这些功能与 GitHub 等版本控制系统类似。你还可以添加基本的 API 监视器(每分钟、每小时或每周运行一次),并获取关于失败的电子邮件通知。
Ping API 是功能强大的 API 检查器。它有着简约的界面,允许创建用于 HTTP API 调用的项目。填入请求和响应数据后,它将自动生成测试代码。你还可以在每次测试之前调用的 JavaScript(或 CoffeeScript)中创建设置脚本。
它有一些用于解析、解码和编码 URI 的基本内置函数。如果发生故障,它将通过电子邮件、Slack 或 Hipchat 发送通知。对于需要网站在全球范围内提供快速响应的 Web 开发人员而言,它非常好用。它的测试会检查来自 3 大洲 5 个地点的 API 响应,分别位于美国、日本、德国和新加坡。你可以计划从 1 分钟到一整天的运行测试。
API Science 是带有图和图表的直观监视工具。API Science 可检查你的或第三方 API 的运行状况、可用性和性能,并自动通知失败状况。它的仪表板直观易用。
你可以使用自定义 JavaScript 脚本升级监控能力,从而与测试一起运行(例如,从 JSON 加载或解析数据)或生成报告(但无法下载)。针对其他 API 相关工具的导入选项也很不错,支持 Postman、Swagger、RAML、HAR。它的服务器位于美国、日本和爱尔兰,对南半球的用户不够友好。
ReadyAPI 是用于功能、安全性和负载测试的高级平台,可与你的 CI/CD 管道紧密集成。ReadyAPI 是可单独购买许可证的 3 种工具的组合:SoapUI Pro(功能测试)、LoadUI Pro(性能测试)和 ServiceV Pro(服务虚拟化)。它们声称自己是“市场上最先进的 API 测试工具”,这可能并不是夸张的说法。
ReadyAPI 有很多选项,一开始可能会令人生畏。它不便宜,因为它针对的是大型公司,这些公司的产品需要从顶部到底部进行复杂的测试。它与多个 CI/CD 工具集成:Git、Docker、Jenkins、Azure DevOps、TeamCity 等。预算紧张的话,它还有适用于 Windows、Linux 和 Mac 的开源免费版本,但是测试速度较慢。
Insomnia 是一个桌面应用,可以使用 Git sync 选项调试 API 规范。“设计”部分提供带有详细错误消息的样式验证。自动生成的预览与 Swagger Editor 很像。在“调试”部分,你可以使用以下方法修改 API:
发送带有 Cookie、查询和标头的请求,请求主体填在编辑器中
配置为 JSON 的环境
支持多种授权选项:Basic、Digest、Bearer Token、Microsoft NTLM、OAuth、AWS IAM、Hawk、Atlassian ASAP、Netrc File
多种语言的客户端代码片段生成器,其中一些具有不同的库实现。
可以使用 Insomnia 社区制作的可安装插件来扩展该平台。这些插件涵盖了 JWT 和令牌生成器、环境设置、XML-JSON 转换器、随机化器和 UI 主题。购买付费订阅后,团队可以协作并将项目托管在云中。
Talend API Tester 是专用于测试 HTTP 和 REST API 的工具。它的主要功能有:
发送请求并检查响应
验证 API 行为
导入 Postman、Swagger、OAS、OpenAPI、HAR 测试集合
借助 APITester,你可以创建具有自定义变量、安全保障和身份验证的动态请求,并将其组织为项目或服务。你可以针对不同格式(JSON、XML、HTML 和其他格式)的响应运行断言。断言是在可视编辑器中创建的。
将 API 推向世界
Apigee 是一个在线平台,你可以通过它的门户为消费者构建、管理、消费 API 并公开其功能。在本文提到的所有在线工具中,Apigee 凭借最优雅的 Web 体验、分析工具、代理创建器和便捷好用的网站生成器脱颖而出。
如果你需要在 REST 服务中采用 SOAP 服务,或者你消费 API 但想通过中间人公开 API 的后端服务,它会为你提供具有许多策略选项(配额、身份验证、数据中介、缓存)的代理向导。。
Apigee 为用户提供了简洁、现代、直观的门户,包括用于 API 的交互式自动生成的文档站点。带有 CSS 主题、HTML 和用户管理预设的门户模板可以快速自定义或发布。为了确保世界一流的 API 性能,它的分析工具和图表涵盖了:
延迟
响应时间
API 使用情况的地理分布
代理性能
错误代码分析
集中管理
Linx 是用于后端集成、自动化和 Web 服务的精巧开发人员工具。其主要使用场景有:
通过一个平台构建、托管和管理多个 API
跨多个技术端点消费和编排数据
加快 API 开发
简化现有的 API
Linx 在创建或调用内部和外部 REST Web 服务方面特别强大。它是扩展需与其他技术集成的 API 的最快方法(例如,你需要将数据加载或推送到数据库中、建立紧密联系、推送更新以通知通知流、随时修改或加密数据等)。除了 REST 之外,Linx 还提供了从数据库到加密和云的多项功能,为 API 与多种技术的集成提供了无数种可能性。Linx IDE Designer 是执行测试和服务调用的绝佳免费选项。如果要监视和自动化测试套件,或在本地或云中计划调用,则需要升级到付费的 Linx Server。
API 工具对比
小结
随着 REST 和 API 在数字世界中扎根,相关工具也会不断涌现。
本文大致介绍了这么多选项,这些选项是针对各种规模的团队、项目和功能的不同需求量身定制的。想推荐你自己的选择也可以在评论中分享。
评论