接口管理工具YApi怎么用?顏值高、易管理、超好用
眾多接口管理工具如雨后春筍搬冒出。讓人欣慰的是,有許多優(yōu)秀作品來(lái)自國(guó)內(nèi),包含YApi和rap。
看著中文的官網(wǎng),熟悉的漢語(yǔ),不禁讓人暗爽。當(dāng)然這也就帶來(lái)另一個(gè)弊端,因?yàn)槭褂没鶖?shù)少,所以參考資料少。我們想學(xué)習(xí)使用方法,只能依賴官方文檔,也算是福禍相倚了。
本文將帶您走進(jìn)Yapi的世界,讓您體驗(yàn)一回小清新的接口管理工具。
根據(jù)統(tǒng)計(jì),市面上互聯(lián)網(wǎng)項(xiàng)目超過10億,保守統(tǒng)計(jì)涉及的API數(shù)量有100億。但是很多API的質(zhì)量堪憂。因?yàn)榕cAPI相關(guān)的文檔、調(diào)試、測(cè)試和數(shù)據(jù)Mock在工作中效率非常低。

我們急需一款產(chǎn)品,它需要具有接口管理功能,提供調(diào)試,文檔管理和測(cè)試功能。這時(shí)YApi橫空出世。
這是一個(gè)接口管理平臺(tái),可以幫助開發(fā)者創(chuàng)建、發(fā)布和維護(hù)API。YApi 還為用戶提供了優(yōu)秀的交互體驗(yàn)。開發(fā)人員只需利用平臺(tái)提供的接口數(shù)據(jù)寫入工具以及簡(jiǎn)單的點(diǎn)擊操作就可以實(shí)現(xiàn)接口的管理。

YApi適合公司業(yè)務(wù)比較復(fù)雜,尤其是跨部門協(xié)作的情況下使用,和它類似的工具還有rap、swagger、moco。
rap也具有圖形界面,但火爆程度逐漸不如yapi。而swagger呢,是一個(gè)超級(jí)強(qiáng)大的工具,它的野心已經(jīng)不滿足于接口管理,后續(xù)課程會(huì)講到它。
moco在13年獲取Duke選擇獎(jiǎng),moco的使用也很簡(jiǎn)單,維護(hù)一份json文件,然后利用命令運(yùn)行。
在這么多工具面前,YApi能夠脫穎而出實(shí)屬不易。在實(shí)際工作中,YApi和swagger屬于兩個(gè)流派,前者易于管理,有著友好的UI界面,但生態(tài)弱,依賴人工和UI維護(hù)。而swagger呢,是一個(gè)十足的野心家,已經(jīng)提供api全生命周期的解決方案,它已經(jīng)不是工具,已然成為了標(biāo)準(zhǔn)。
進(jìn)入YApi后,這頁(yè)面,這UI,確實(shí)小清新,不愧是后起之秀。這里簡(jiǎn)單進(jìn)行介紹,它主要有下面四個(gè)部分:
1.首頁(yè)頭部展示了當(dāng)前所在的位置、搜索框、新建項(xiàng)目、查看文檔和用戶信息。
2.首頁(yè)左側(cè)展示分組信息,“分組”是“項(xiàng)目”的集合,只有超級(jí)管理員可以管理分組。
3.首頁(yè)右側(cè)是分組下的項(xiàng)目和成員列表,點(diǎn)擊左側(cè)的某個(gè)分組,右側(cè)會(huì)出現(xiàn)該分組下的項(xiàng)目和成員信息。
4.點(diǎn)擊項(xiàng)目右上角的星星即可關(guān)注項(xiàng)目,關(guān)注的項(xiàng)目可以在“我的關(guān)注”頁(yè)面查看。

其實(shí)不光是首頁(yè)UI,他的項(xiàng)目UI也令人咋舌,在UI上這么清新的國(guó)內(nèi)平臺(tái)已經(jīng)非常少見。
點(diǎn)擊一個(gè)項(xiàng)目,進(jìn)入項(xiàng)目頁(yè),項(xiàng)目頁(yè)展示了屬于該項(xiàng)目的全部接口。并提供項(xiàng)目、接口的全部操作。
5.項(xiàng)目頁(yè)左側(cè)的 “接口列表” 展示了該項(xiàng)目下的所有接口,右側(cè)默認(rèn)顯示該項(xiàng)目下所有接口的列表。
6.點(diǎn)擊左側(cè)的某個(gè)接口,右側(cè)會(huì)出現(xiàn)“預(yù)覽”、“編輯”和“運(yùn)行”。
7.點(diǎn)擊左側(cè)的 “測(cè)試集合” 使用測(cè)試集功能。
8.點(diǎn)擊二級(jí)導(dǎo)航的“設(shè)置”,項(xiàng)目組長(zhǎng)即可編輯項(xiàng)目信息和管理成員列表。
9.點(diǎn)擊二級(jí)導(dǎo)航的“動(dòng)態(tài)”,即可查看項(xiàng)目的操作日志。
有的讀者已經(jīng)迫不及待了!下面用一個(gè)簡(jiǎn)單例子來(lái)入門YApi,在項(xiàng)目里新建接口,這時(shí)會(huì)彈出一個(gè)窗口,幾個(gè)選項(xiàng)都很清楚,接口路徑是什么?這是方便前端調(diào)用后端,而設(shè)置的接口路徑:

點(diǎn)擊新添加的接口,右側(cè)可以看到接口的預(yù)覽信息,點(diǎn)擊右側(cè)的編輯進(jìn)入編輯面板。在該面板中你可以看到接口的基本信息(接口名稱、分類、路徑),除此以外,你還可以完善以下接口信息:
接口路徑:可以更改 HTTP 請(qǐng)求方式,并且支持 restful 動(dòng)態(tài)路由,例如 /api/{id}/{name}, id和name是動(dòng)態(tài)參數(shù)
狀態(tài):用于標(biāo)識(shí)接口是否開發(fā)完成。
Tag:用于標(biāo)識(shí)接口tag信息(v1.3.23+),在接口list頁(yè)可以根據(jù)tag過濾接口

我們接著往下看,你會(huì)看到請(qǐng)求參數(shù),可以設(shè)置請(qǐng)求時(shí)需要哪些參數(shù),它們可以是必需,也可以是不必須:
Query參數(shù):接口 url 的查詢字符串。點(diǎn)擊『添加Query參數(shù)』按鈕來(lái)添加參數(shù),可以通過拖動(dòng)來(lái)交換參數(shù)位置
Headers:http 請(qǐng)求頭字段。在 req_body 形式是 form 格式下會(huì)在 header 中自動(dòng)生成 ‘Content-Type application/x-www-form-urlencoded’,其他3種格式也會(huì)自動(dòng)生成不同 header

請(qǐng)求參數(shù)后面是返回?cái)?shù)據(jù),它分為 json & raw 兩種形式?;?mockjs 和 json5,這是一種使用注釋的方式寫參數(shù)說(shuō)明,如果你看不懂,請(qǐng)注意下面的鏈接,這是官網(wǎng)對(duì)Mock的介紹。
Mock介紹:
Mock介紹-教程

上面只是對(duì)接口的設(shè)置,但我們經(jīng)常遇到一些情況,比如我想根據(jù)不同的請(qǐng)求參數(shù)、IP返回不同的 HTTP Code、HTTP 頭和 JSON 數(shù)據(jù),這么復(fù)雜的情況,接口設(shè)置是無(wú)法做到的,期望Mock登場(chǎng)!它說(shuō):“你們靠邊站,我可以做到!”
期望Mock可以根據(jù)設(shè)置的請(qǐng)求過濾規(guī)則,返回期望數(shù)據(jù),這是一個(gè)高端玩家。要想使用它,你要先進(jìn)入接口詳情頁(yè),然后點(diǎn)擊高級(jí)Mock。

點(diǎn)擊添加期望,填寫過濾規(guī)則以及期望返回?cái)?shù)據(jù),如下圖這樣,最后點(diǎn)擊確定。


我們?cè)跒g覽器里測(cè)試一下,發(fā)送符合規(guī)則的請(qǐng)求:

就像文中說(shuō)的那樣,在這么多工具面前,YApi能夠脫穎而出實(shí)屬不易。在實(shí)際工作中,YApi和swagger屬于兩個(gè)流派。前者易于管理,有著友好的UI界面,但生態(tài)弱,依賴人工和UI維護(hù)。而swagger呢,是一個(gè)十足的野心家,已經(jīng)提供api全生命周期的解決方案,它已經(jīng)不是工具,已然成為了標(biāo)準(zhǔn)。
YApi要走的路還很長(zhǎng),它有自己勁敵:swagger。