Panda Api基于 Rust 的接口設(shè)計(jì)工具
Panda api 是一款接口設(shè)計(jì)工具,它能夠生成文檔、提供接口模擬服務(wù)(在你沒(méi)寫(xiě)任何代碼之前)、自動(dòng)測(cè)試后端接口,有效提升項(xiàng)目的開(kāi)發(fā)效率和質(zhì)量。
為什么要用Panda Api?
提升開(kāi)發(fā)效率 和 開(kāi)發(fā)質(zhì)量:
Panda Api 能夠在開(kāi)發(fā)過(guò)程中隔離前后端,讓前端隨心所欲的掌控接口的請(qǐng)求和返回,而不需要后端開(kāi)發(fā)人員介入。開(kāi)發(fā)環(huán)境是影響研發(fā)效能最大的一個(gè)因素之一,不穩(wěn)定的上游接口環(huán)境會(huì)讓一個(gè)非常簡(jiǎn)單的需求輕松消耗掉數(shù)天的時(shí)間。當(dāng)后端的接口還未開(kāi)發(fā)完成,或者接口忽然因?yàn)楹蠖四硞€(gè)開(kāi)發(fā)中的功能突然不能工作時(shí),Panda api可以快速提供接口。
Panda Api可以提供一個(gè)非常高效的前端開(kāi)發(fā)環(huán)境和后端測(cè)試環(huán)境,什么是一個(gè)好的開(kāi)發(fā)環(huán)境呢?
1、穩(wěn)定
好的開(kāi)發(fā)環(huán)境應(yīng)該是穩(wěn)定可用的,不應(yīng)該在開(kāi)發(fā)過(guò)程中受到其他開(kāi)發(fā)人員影響,服務(wù)頻繁掛掉或者頻繁改變,前后端開(kāi)發(fā)的團(tuán)隊(duì)成員就深有體會(huì),兩邊相互影響,然后又導(dǎo)致相互等待,非常影響開(kāi)發(fā)狀態(tài)和效率。然而很多團(tuán)隊(duì)一直是在以這樣低效的方式在推進(jìn)。
2、快速驗(yàn)證
修改代碼能夠在盡可能短的時(shí)間內(nèi)得到驗(yàn)證也是一個(gè)基本訴求,這也是為什么大部分前端構(gòu)建都會(huì)關(guān)注 Hot reload 和更高級(jí)的HMR 。有些場(chǎng)景下一次簡(jiǎn)單前端的修改就要經(jīng)過(guò)長(zhǎng)時(shí)間等待等待后端開(kāi)發(fā)完成,例如依賴上游修改接口的返回內(nèi)容,需要修改后端的程序然后重新部署,需要走一遍完整的發(fā)布流程來(lái)測(cè)試某個(gè)修改調(diào)整,這種改一行等幾十分鐘的開(kāi)發(fā)方式對(duì)效率的拖累是極其恐怖的。
3、一致性
很多項(xiàng)目,因?yàn)閰⑴c人員少,覺(jué)得不需要寫(xiě)什么文檔,直接就討論后開(kāi)始開(kāi)發(fā)。開(kāi)發(fā)到后面就會(huì)發(fā)現(xiàn),大家的共識(shí)是不一致的,進(jìn)一步引發(fā)爭(zhēng)論和項(xiàng)目的重新調(diào)整,如果中途換人或者半年以后再來(lái)維護(hù)這個(gè)項(xiàng)目,就很容易變成一個(gè)可怕的泥潭,所有人都不愿意去碰。原因就是一開(kāi)始我們就沒(méi)有形成文檔。傳統(tǒng)的接口文檔確實(shí)很費(fèi)時(shí)間,Panda api把文檔即服務(wù)做好,寫(xiě)文檔變成了一個(gè)更高效的開(kāi)發(fā)方式。
開(kāi)發(fā)者對(duì)于當(dāng)前的需求應(yīng)該是有確切認(rèn)知的,而不是一直不停的懷疑自己的理解到底對(duì)不對(duì),相關(guān)接口的字段是什么意思。
Panda Api是如何解決好這幾個(gè)問(wèn)題
Panda Api的三個(gè)核心服務(wù):
- 提供前后端的開(kāi)發(fā)的接口文檔
- 提供前端開(kāi)發(fā)的接口服務(wù)
- 可以進(jìn)行后端接口測(cè)試
Panda Api 接口文檔的工具提供以下功能:
- 提供一份可以前后端瀏覽的接口文檔
- 使用json或json5語(yǔ)法來(lái)寫(xiě)文檔,操作成本、學(xué)習(xí)成本非常低
- 接口文檔也可以像代碼一樣進(jìn)行版本控制,前后端都有維護(hù)的權(quán)限。Panda api依賴git等版本管理工具來(lái)做
- 可以在定義好文檔后,立即為前端開(kāi)發(fā)提供接口服務(wù),不用等待后端開(kāi)發(fā)完成。為前端支持各類請(qǐng)求:GET, POST, PUT, DELETE, OPTIONS
- 可以使用這個(gè)工具進(jìn)行前端測(cè)試和后端測(cè)試
- 可以像Mock一樣,自動(dòng)生成相關(guān)測(cè)試數(shù)據(jù)
Todo 還在設(shè)計(jì)開(kāi)發(fā)的功能
- 支持多種開(kāi)發(fā)環(huán)境切換,例如開(kāi)發(fā)環(huán)境、測(cè)試環(huán)境、正式環(huán)境
- 支持websocket方式為前端開(kāi)發(fā)提供測(cè)試接口服務(wù);支持用websocket方式作為客戶端進(jìn)行后端服務(wù)測(cè)試
- 其它等你使用后來(lái)告訴我
Panda Api 項(xiàng)目地址:
https://github.com/arlicle/panda-api
Panda Api 如何使用
快速簡(jiǎn)單的寫(xiě)好第一個(gè)接口文檔 使用說(shuō)明(一)
接口文檔的高級(jí)配置 使用說(shuō)明(二)
相關(guān)字段說(shuō)明
test_data使用說(shuō)明
Auth接口權(quán)限配置說(shuō)明
