前言
今天發(fā)現(xiàn)了一個(gè)很niubility的東西__API Blueprint__,先給出官網(wǎng)https://apiblueprint.org/。下面是官網(wǎng)給出的介紹:
API Blueprint. A powerful high-level API description language for web APIs.
這個(gè)可以干什么呢?按照API Blueprint的語(yǔ)法(類似markdown),我們可以利用生態(tài)鏈工具:
生成API接口文檔
模擬接口在你沒寫任何代碼之前
待研究...
對(duì)于__1__因?yàn)橹罢{(diào)研過Swagger等工具還是關(guān)注過一段時(shí)間寫接口文檔的事情,當(dāng)時(shí)選取的方案就是Swagger,當(dāng)時(shí)也覺的挺好用的,最后的接口文檔也是可以真實(shí)返回?cái)?shù)據(jù)的,但是問題呢就是寫Swagger依賴的json文檔是個(gè)問題,官方支持的語(yǔ)法是yaml(要是markdown多好啊),直接手動(dòng)維護(hù)所有接口的json文檔很X疼的啊,最后發(fā)現(xiàn)一個(gè)sosoapi的東東可以生成Swagger依賴的json文檔,但是沒開源?。。?!所以使用要是選型API Blueprint語(yǔ)法作為接口文檔書寫標(biāo)準(zhǔn),的確是個(gè)不錯(cuò)的選擇。
貼一下Swagger的官網(wǎng)http://swagger.io/
其次,API Blueprint最讓我覺得厲害的就是我曾經(jīng)幻想的:先制定接口數(shù)據(jù)結(jié)構(gòu),然后通過這個(gè)數(shù)據(jù)結(jié)構(gòu)先模擬接口響應(yīng),之后客戶端的同學(xué)和后端的同學(xué)就可并行的開發(fā),客戶端的同學(xué)再也不用等到后端的同學(xué)開發(fā)完畢再對(duì)接接口了,后端同學(xué)開發(fā)完畢無縫切換到真實(shí)代碼上即可。
試用工具選用
看了生態(tài)鏈下眼花繚亂的工具,先選了個(gè)go開發(fā)的工具snowboard
安裝
// linux下安裝,這里安裝的是v0.5.0版 wget https://github.com/subosito/snowboard/releases/download/v0.5.0/snowboard-v0.5.0.linux-amd64.tar.gz tar -zxvf snowboard-v0.5.0.linux-amd64.tar.gz ./snowboard -h // mac下安裝 $ brew tap subosito/packages $ brew install snowboard
編寫第一個(gè)接口文檔
新建一個(gè).apib后綴的文件api.apib
推薦api-blueprint語(yǔ)法插件:language-api-blueprint 例如,Atom
編寫接口文檔
// 示例 # API ## GET /v1/message + Response 200 (application/json) { "status":"OK", "result": { "lists":[ {"id":666}, {"id":888} ], "count":10 } }
生成接口文檔html頁(yè)面
// 命令 ./snowboard html -i api.apib -o api.html -s
訪問 http://127.0.0.1:8088/
啟用接口模擬
// 命令 ./snowboard mock -i api.apib // 返回 Mock server is ready. Use 127.0.0.1:8087 Available Routes: GET 200 /v1/message
訪問 http://127.0.0.1:8087/v1/message
是不是很不錯(cuò)的東西,提高生產(chǎn)效率的利器啊,哈哈~ 我今天才知道.......... 看它還有很多的工具,包含和Swagger結(jié)合使用的,后續(xù)慢慢研究,今天先過了個(gè)新鮮勁~
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/22486.html
摘要:是一套描述標(biāo)準(zhǔn),和一樣,屬于一種標(biāo)記語(yǔ)言,可以把標(biāo)記文稿轉(zhuǎn)換成漂亮的接口文檔。還可以創(chuàng)建,進(jìn)行本地調(diào)試。一語(yǔ)法只要用寫過東西基本很快就能掌握語(yǔ)法。參考文檔使用編寫文檔用生成優(yōu)雅的文檔指導(dǎo)手冊(cè)用生成優(yōu)雅的文檔 前后端配合開發(fā)的時(shí)候,常常會(huì)有這樣一種需求:你接口定義好了嗎?能不能先幫我起一個(gè) Mock Server 先跑起來?那么,如何才能避免前后端開發(fā)在時(shí)間差上的無謂等待呢?api-bl...
摘要:移動(dòng)端應(yīng)用一般都運(yùn)行在微信瀏覽器中中手機(jī)瀏覽器中。因?yàn)槲⑿艦g覽器是定制的瀏覽器,一般的遠(yuǎn)程調(diào)試方式都不可用,需要配合特定的工具,如微信開發(fā)者工具。 前端如何高效的與后端協(xié)作開發(fā) 1. 前后端分離 前端與后端的分離,能使前端的開發(fā)脫離后端的開發(fā)模式,擁有更大的自由度,以此便可做前端工程化、組件化、單頁(yè)面應(yīng)用等。 可以參考:前后端分離、web與static服務(wù)器分離 2. 盡量避免后端模板...
摘要:移動(dòng)端應(yīng)用一般都運(yùn)行在微信瀏覽器中中手機(jī)瀏覽器中。因?yàn)槲⑿艦g覽器是定制的瀏覽器,一般的遠(yuǎn)程調(diào)試方式都不可用,需要配合特定的工具,如微信開發(fā)者工具。 前端如何高效的與后端協(xié)作開發(fā) 1. 前后端分離 前端與后端的分離,能使前端的開發(fā)脫離后端的開發(fā)模式,擁有更大的自由度,以此便可做前端工程化、組件化、單頁(yè)面應(yīng)用等。 可以參考:前后端分離、web與static服務(wù)器分離 2. 盡量避免后端模板...
閱讀 2583·2021-10-11 10:58
閱讀 1163·2021-09-29 09:34
閱讀 1521·2021-09-26 09:46
閱讀 3846·2021-09-22 15:31
閱讀 744·2019-08-30 15:54
閱讀 1467·2019-08-30 13:20
閱讀 1262·2019-08-30 13:13
閱讀 1495·2019-08-26 13:52