市面上可用的 REST API 工具選項(xiàng)有很多,我們來看看其中一些開發(fā)人員最喜歡的工具例书。
1
API 定義
Swagger Editor 是圖形可視化的流行選項(xiàng)锣尉。你可以使用 JSON 或 YAML 定義 API。此外雾叭,你可以為大多數(shù)相關(guān)技術(shù)(從 ASP.NET Core 和 Kotlin 到 Node.JS 和 Python)生成服務(wù)端或客戶端存根悟耘。
Apicurio 是一個(gè)開源項(xiàng)目落蝙,簡(jiǎn)單而優(yōu)雅织狐,支持 JSON 和 YAML。它可以:
從源代碼控制筏勒、文件和 URL 導(dǎo)入 API移迫。
與你的 GitHub、GitLab 或 Bitbucket 帳戶集成管行。
預(yù)覽實(shí)時(shí)文檔厨埋。
提供基于 Open API 標(biāo)準(zhǔn)設(shè)計(jì) API 的可視化編輯器(無需任何編碼技能!)捐顷。
2
測(cè)試和監(jiān)視*
Postman 是一個(gè)直觀且井井有條的桌面工具荡陷,用于創(chuàng)建雨效、測(cè)試和監(jiān)視 API。這是我個(gè)人最喜歡的工具之一废赞,因?yàn)樗俏矣脕頊y(cè)試自己 API 的第一個(gè)工具徽龟,而且學(xué)習(xí)它的過程再順利不過了。該產(chǎn)品功能全面唉地,涵蓋了從創(chuàng)建到測(cè)試和監(jiān)視的 API 開發(fā)流程据悔。
使用 Postman,你可以:
添加 mock 服務(wù)器耘沼。
在環(huán)境設(shè)置之間切換极颓。
生成文檔。
應(yīng)用自定義樣式群嗤。
中型和大型團(tuán)隊(duì)會(huì)很喜歡它的個(gè)人和團(tuán)隊(duì)工作區(qū)菠隆,以及分叉和合并功能,這些功能與 GitHub 等版本控制系統(tǒng)類似骚烧。你還可以添加基本的 API 監(jiān)視器(每分鐘浸赫、每小時(shí)或每周運(yùn)行一次),并獲取關(guān)于失敗的電子郵件通知赃绊。
Ping API 是功能強(qiáng)大的 API 檢查器既峡。它有著簡(jiǎn)約的界面,允許創(chuàng)建用于 HTTP API 調(diào)用的項(xiàng)目碧查。填入請(qǐng)求和響應(yīng)數(shù)據(jù)后运敢,它將自動(dòng)生成測(cè)試代碼。你還可以在每次測(cè)試之前調(diào)用的 JavaScript(或 CoffeeScript)中創(chuàng)建設(shè)置腳本忠售。
它有一些用于解析传惠、解碼和編碼 URI 的基本內(nèi)置函數(shù)。如果發(fā)生故障稻扬,它將通過電子郵件卦方、Slack 或 Hipchat 發(fā)送通知。對(duì)于需要網(wǎng)站在全球范圍內(nèi)提供快速響應(yīng)的 Web 開發(fā)人員而言泰佳,它非常好用盼砍。它的測(cè)試會(huì)檢查來自 3 大洲 5 個(gè)地點(diǎn)的 API 響應(yīng),分別位于美國(guó)逝她、日本浇坐、德國(guó)和新加坡。你可以計(jì)劃從 1 分鐘到一整天的運(yùn)行測(cè)試黔宛。
API Science 是帶有圖和圖表的直觀監(jiān)視工具近刘。API Science 可檢查你的或第三方 API 的運(yùn)行狀況、可用性和性能,并自動(dòng)通知失敗狀況觉渴。它的儀表板直觀易用介劫。
你可以使用自定義 JavaScript 腳本升級(jí)監(jiān)控能力,從而與測(cè)試一起運(yùn)行(例如案淋,從 JSON 加載或解析數(shù)據(jù))或生成報(bào)告(但無法下載)蜕猫。針對(duì)其他 API 相關(guān)工具的導(dǎo)入選項(xiàng)也很不錯(cuò),支持 Postman哎迄、Swagger回右、RAML、HAR漱挚。它的服務(wù)器位于美國(guó)翔烁、日本和愛爾蘭,對(duì)南半球的用戶不夠友好旨涝。
ReadyAPI 是用于功能蹬屹、安全性和負(fù)載測(cè)試的高級(jí)平臺(tái),可與你的 CI/CD 管道緊密集成白华。ReadyAPI 是可單獨(dú)購(gòu)買許可證的 3 種工具的組合:SoapUI Pro(功能測(cè)試)慨默、LoadUI Pro(性能測(cè)試)和 ServiceV Pro(服務(wù)虛擬化)。它們聲稱自己是“市場(chǎng)上最先進(jìn)的 API 測(cè)試工具”弧腥,這可能并不是夸張的說法厦取。
ReadyAPI 有很多選項(xiàng),一開始可能會(huì)令人生畏管搪。它不便宜虾攻,因?yàn)樗槍?duì)的是大型公司,這些公司的產(chǎn)品需要從頂部到底部進(jìn)行復(fù)雜的測(cè)試更鲁。它與多個(gè) CI/CD 工具集成:Git霎箍、Docker、Jenkins澡为、Azure DevOps漂坏、TeamCity 等。預(yù)算緊張的話媒至,它還有適用于 Windows顶别、Linux 和 Mac 的開源免費(fèi)版本,但是測(cè)試速度較慢塘慕。
Insomnia 是一個(gè)桌面應(yīng)用筋夏,可以使用 Git sync 選項(xiàng)調(diào)試 API 規(guī)范蒂胞⊥寄兀“設(shè)計(jì)”部分提供帶有詳細(xì)錯(cuò)誤消息的樣式驗(yàn)證。自動(dòng)生成的預(yù)覽與 Swagger Editor 很像。在“調(diào)試”部分蛤织,你可以使用以下方法修改 API:
發(fā)送帶有 Cookie赴叹、查詢和標(biāo)頭的請(qǐng)求,請(qǐng)求主體填在編輯器中
配置為 JSON 的環(huán)境
支持多種授權(quán)選項(xiàng):Basic指蚜、Digest乞巧、Bearer Token、Microsoft NTLM摊鸡、OAuth绽媒、AWS IAM、Hawk免猾、Atlassian ASAP是辕、Netrc File
多種語言的客戶端代碼片段生成器,其中一些具有不同的庫(kù)實(shí)現(xiàn)猎提。
可以使用 Insomnia 社區(qū)制作的可安裝插件來擴(kuò)展該平臺(tái)获三。這些插件涵蓋了 JWT 和令牌生成器、環(huán)境設(shè)置锨苏、XML-JSON 轉(zhuǎn)換器疙教、隨機(jī)化器和 UI 主題。購(gòu)買付費(fèi)訂閱后伞租,團(tuán)隊(duì)可以協(xié)作并將項(xiàng)目托管在云中贞谓。
Talend API Tester 是專用于測(cè)試 HTTP 和 REST API 的工具。它的主要功能有:
發(fā)送請(qǐng)求并檢查響應(yīng)
驗(yàn)證 API 行為
導(dǎo)入 Postman葵诈、Swagger经宏、OAS、OpenAPI驯击、HAR 測(cè)試集合
借助 APITester烁兰,你可以創(chuàng)建具有自定義變量、安全保障和身份驗(yàn)證的動(dòng)態(tài)請(qǐng)求徊都,并將其組織為項(xiàng)目或服務(wù)沪斟。你可以針對(duì)不同格式(JSON、XML暇矫、HTML 和其他格式)的響應(yīng)運(yùn)行斷言主之。斷言是在可視編輯器中創(chuàng)建的。
3
將 API 推向世界
Apigee 是一個(gè)在線平臺(tái)李根,你可以通過它的門戶為消費(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ù),它會(huì)為你提供具有許多策略選項(xiàng)(配額盔几、身份驗(yàn)證晴弃、數(shù)據(jù)中介、緩存)的代理向?qū)А?/p>
Apigee 為用戶提供了簡(jiǎn)潔逊拍、現(xiàn)代上鞠、直觀的門戶,包括用于 API 的交互式自動(dòng)生成的文檔站點(diǎn)芯丧。帶有 CSS 主題旗国、HTML 和用戶管理預(yù)設(shè)的門戶模板可以快速自定義或發(fā)布。為了確保世界一流的 API 性能注整,它的分析工具和圖表涵蓋了:
延遲
響應(yīng)時(shí)間
API 使用情況的地理分布
代理性能
錯(cuò)誤代碼分析
4
集中管理
Linx 是用于后端集成能曾、自動(dòng)化和 Web 服務(wù)的精巧開發(fā)人員工具。其主要使用場(chǎng)景有:
通過一個(gè)平臺(tái)構(gòu)建肿轨、托管和管理多個(gè) API
跨多個(gè)技術(shù)端點(diǎn)消費(fèi)和編排數(shù)據(jù)
加快 API 開發(fā)
簡(jiǎn)化現(xiàn)有的 API
Linx 在創(chuàng)建或調(diào)用內(nèi)部和外部 REST Web 服務(wù)方面特別強(qiáng)大寿冕。它是擴(kuò)展需與其他技術(shù)集成的 API 的最快方法(例如,你需要將數(shù)據(jù)加載或推送到數(shù)據(jù)庫(kù)中椒袍、建立緊密聯(lián)系驼唱、推送更新以通知通知流、隨時(shí)修改或加密數(shù)據(jù)等)驹暑。除了 REST 之外玫恳,Linx 還提供了從數(shù)據(jù)庫(kù)到加密和云的多項(xiàng)功能,為 API 與多種技術(shù)的集成提供了無數(shù)種可能性优俘。Linx IDE Designer 是執(zhí)行測(cè)試和服務(wù)調(diào)用的絕佳免費(fèi)選項(xiàng)京办。如果要監(jiān)視和自動(dòng)化測(cè)試套件,或在本地或云中計(jì)劃調(diào)用帆焕,則需要升級(jí)到付費(fèi)的 Linx Server惭婿。
5
API 工具對(duì)比
6
小結(jié)
隨著 REST 和 API 在數(shù)字世界中扎根,相關(guān)工具也會(huì)不斷涌現(xiàn)叶雹。
本文大致介紹了這么多選項(xiàng)财饥,這些選項(xiàng)是針對(duì)各種規(guī)模的團(tuán)隊(duì)、項(xiàng)目和功能的不同需求量身定制的折晦。想推薦你自己的選擇也可以在評(píng)論中分享钥星。