5款好用的 REST API 工具,推薦給你!

來源:hackernoon.com/
rest-api-tools-smackdown-nov3ulw
作者 | Marta Krzyk
譯者 | 王強(qiáng)
策劃 | 小智
市面上可用的 REST API 工具選項(xiàng)有很多,我們來看看其中一些開發(fā)人員最喜歡的工具。
API 定義
Swagger Editor 是圖形可視化的流行選項(xiàng)。你可以使用 JSON 或 YAML 定義 API。此外,你可以為大多數(shù)相關(guān)技術(shù)(從 ASP.NET Core 和 Kotlin 到 Node.JS 和 Python)生成服務(wù)端或客戶端存根。

Apicurio 是一個(gè)開源項(xiàng)目,簡單而優(yōu)雅,支持 JSON 和 YAML。它可以:
從源代碼控制、文件和 URL 導(dǎo)入 API。
與你的 GitHub、GitLab 或 Bitbucket 帳戶集成。
預(yù)覽實(shí)時(shí)文檔。
提供基于 Open API 標(biāo)準(zhǔn)設(shè)計(jì) API 的可視化編輯器(無需任何編碼技能?。?/p>


測試和監(jiān)視
Postman 是一個(gè)直觀且井井有條的桌面工具,用于創(chuàng)建、測試和監(jiān)視 API。這是我個(gè)人最喜歡的工具之一,因?yàn)樗俏矣脕頊y試自己 API 的第一個(gè)工具,而且學(xué)習(xí)它的過程再順利不過了。該產(chǎn)品功能全面,涵蓋了從創(chuàng)建到測試和監(jiān)視的 API 開發(fā)流程。
使用 Postman,你可以:
添加 mock 服務(wù)器。
在環(huán)境設(shè)置之間切換。
生成文檔。
應(yīng)用自定義樣式。
中型和大型團(tuán)隊(duì)會很喜歡它的個(gè)人和團(tuán)隊(duì)工作區(qū),以及分叉和合并功能,這些功能與 GitHub 等版本控制系統(tǒng)類似。你還可以添加基本的 API 監(jiān)視器(每分鐘、每小時(shí)或每周運(yùn)行一次),并獲取關(guān)于失敗的電子郵件通知。

Ping API 是功能強(qiáng)大的 API 檢查器。它有著簡約的界面,允許創(chuàng)建用于 HTTP API 調(diào)用的項(xiàng)目。填入請求和響應(yīng)數(shù)據(jù)后,它將自動生成測試代碼。你還可以在每次測試之前調(diào)用的 JavaScript(或 CoffeeScript)中創(chuàng)建設(shè)置腳本。
它有一些用于解析、解碼和編碼 URI 的基本內(nèi)置函數(shù)。如果發(fā)生故障,它將通過電子郵件、Slack 或 Hipchat 發(fā)送通知。對于需要網(wǎng)站在全球范圍內(nèi)提供快速響應(yīng)的 Web 開發(fā)人員而言,它非常好用。它的測試會檢查來自 3 大洲 5 個(gè)地點(diǎn)的 API 響應(yīng),分別位于美國、日本、德國和新加坡。你可以計(jì)劃從 1 分鐘到一整天的運(yùn)行測試。

API Science 是帶有圖和圖表的直觀監(jiān)視工具。API Science 可檢查你的或第三方 API 的運(yùn)行狀況、可用性和性能,并自動通知失敗狀況。它的儀表板直觀易用。
你可以使用自定義 JavaScript 腳本升級監(jiān)控能力,從而與測試一起運(yùn)行(例如,從 JSON 加載或解析數(shù)據(jù))或生成報(bào)告(但無法下載)。針對其他 API 相關(guān)工具的導(dǎo)入選項(xiàng)也很不錯(cuò),支持 Postman、Swagger、RAML、HAR。它的服務(wù)器位于美國、日本和愛爾蘭,對南半球的用戶不夠友好。

ReadyAPI 是用于功能、安全性和負(fù)載測試的高級平臺,可與你的 CI/CD 管道緊密集成。ReadyAPI 是可單獨(dú)購買許可證的 3 種工具的組合:SoapUI Pro(功能測試)、LoadUI Pro(性能測試)和 ServiceV Pro(服務(wù)虛擬化)。它們聲稱自己是“市場上最先進(jìn)的 API 測試工具”,這可能并不是夸張的說法。
ReadyAPI 有很多選項(xiàng),一開始可能會令人生畏。它不便宜,因?yàn)樗槍Φ氖谴笮凸?,這些公司的產(chǎn)品需要從頂部到底部進(jìn)行復(fù)雜的測試。它與多個(gè) CI/CD 工具集成:Git、Docker、Jenkins、Azure DevOps、TeamCity 等。預(yù)算緊張的話,它還有適用于 Windows、Linux 和 Mac 的開源免費(fèi)版本,但是測試速度較慢。

Insomnia 是一個(gè)桌面應(yīng)用,可以使用 Git sync 選項(xiàng)調(diào)試 API 規(guī)范?!霸O(shè)計(jì)”部分提供帶有詳細(xì)錯(cuò)誤消息的樣式驗(yàn)證。自動生成的預(yù)覽與 Swagger Editor 很像。在“調(diào)試”部分,你可以使用以下方法修改 API:

發(fā)送帶有 Cookie、查詢和標(biāo)頭的請求,請求主體填在編輯器中
配置為 JSON 的環(huán)境
支持多種授權(quán)選項(xiàng):Basic、Digest、Bearer Token、Microsoft NTLM、OAuth、AWS IAM、Hawk、Atlassian ASAP、Netrc File
多種語言的客戶端代碼片段生成器,其中一些具有不同的庫實(shí)現(xiàn)。
可以使用 Insomnia 社區(qū)制作的可安裝插件來擴(kuò)展該平臺。這些插件涵蓋了 JWT 和令牌生成器、環(huán)境設(shè)置、XML-JSON 轉(zhuǎn)換器、隨機(jī)化器和 UI 主題。購買付費(fèi)訂閱后,團(tuán)隊(duì)可以協(xié)作并將項(xiàng)目托管在云中。

Talend API Tester 是專用于測試 HTTP 和 REST API 的工具。它的主要功能有:
發(fā)送請求并檢查響應(yīng)
驗(yàn)證 API 行為
導(dǎo)入 Postman、Swagger、OAS、OpenAPI、HAR 測試集合
借助 APITester,你可以創(chuàng)建具有自定義變量、安全保障和身份驗(yàn)證的動態(tài)請求,并將其組織為項(xiàng)目或服務(wù)。你可以針對不同格式(JSON、XML、HTML 和其他格式)的響應(yīng)運(yùn)行斷言。斷言是在可視編輯器中創(chuàng)建的。


將 API 推向世界
Apigee 是一個(gè)在線平臺,你可以通過它的門戶為消費(fèi)者構(gòu)建、管理、消費(fèi) API 并公開其功能。在本文提到的所有在線工具中,Apigee 憑借最優(yōu)雅的 Web 體驗(yàn)、分析工具、代理創(chuàng)建器和便捷好用的網(wǎng)站生成器脫穎而出。
如果你需要在 REST 服務(wù)中采用 SOAP 服務(wù),或者你消費(fèi) API 但想通過中間人公開 API 的后端服務(wù),它會為你提供具有許多策略選項(xiàng)(配額、身份驗(yàn)證、數(shù)據(jù)中介、緩存)的代理向?qū)??!?/p>
Apigee 為用戶提供了簡潔、現(xiàn)代、直觀的門戶,包括用于 API 的交互式自動生成的文檔站點(diǎn)。帶有 CSS 主題、HTML 和用戶管理預(yù)設(shè)的門戶模板可以快速自定義或發(fā)布。為了確保世界一流的 API 性能,它的分析工具和圖表涵蓋了:
延遲
響應(yīng)時(shí)間
API 使用情況的地理分布
代理性能
錯(cuò)誤代碼分析


集中管理
Linx 是用于后端集成、自動化和 Web 服務(wù)的精巧開發(fā)人員工具。其主要使用場景有:
通過一個(gè)平臺構(gòu)建、托管和管理多個(gè) API
跨多個(gè)技術(shù)端點(diǎn)消費(fèi)和編排數(shù)據(jù)
加快 API 開發(fā)
簡化現(xiàn)有的 API
Linx 在創(chuàng)建或調(diào)用內(nèi)部和外部 REST Web 服務(wù)方面特別強(qiáng)大。它是擴(kuò)展需與其他技術(shù)集成的 API 的最快方法(例如,你需要將數(shù)據(jù)加載或推送到數(shù)據(jù)庫中、建立緊密聯(lián)系、推送更新以通知通知流、隨時(shí)修改或加密數(shù)據(jù)等)。除了 REST 之外,Linx 還提供了從數(shù)據(jù)庫到加密和云的多項(xiàng)功能,為 API 與多種技術(shù)的集成提供了無數(shù)種可能性。Linx IDE Designer 是執(zhí)行測試和服務(wù)調(diào)用的絕佳免費(fèi)選項(xiàng)。如果要監(jiān)視和自動化測試套件,或在本地或云中計(jì)劃調(diào)用,則需要升級到付費(fèi)的 Linx Server。


API 工具對比

小結(jié)
隨著 REST 和 API 在數(shù)字世界中扎根,相關(guān)工具也會不斷涌現(xiàn)。
本文大致介紹了這么多選項(xiàng),這些選項(xiàng)是針對各種規(guī)模的團(tuán)隊(duì)、項(xiàng)目和功能的不同需求量身定制的。想推薦你自己的選擇也可以在評論中分享。
END
有熱門推薦?
1.?從 0 開始手寫一個(gè) RPC 框架,輕松搞定!
2.?那些總是寫“爛代碼”的同學(xué),強(qiáng)烈推薦你用這款I(lǐng)DEA插件!
最近面試BAT,整理一份面試資料《Java面試BATJ通關(guān)手冊》,覆蓋了Java核心技術(shù)、JVM、Java并發(fā)、SSM、微服務(wù)、數(shù)據(jù)庫、數(shù)據(jù)結(jié)構(gòu)等等。
獲取方式:點(diǎn)“在看”,關(guān)注公眾號并回復(fù)?Java?領(lǐng)取,更多內(nèi)容陸續(xù)奉上。
文章有幫助的話,在看,轉(zhuǎn)發(fā)吧。
謝謝支持喲 (*^__^*)

