NodeJs - Express項(xiàng)目 自動(dòng)生成API文檔

背景

在前端開發(fā)中嚎货,避免少不了接口文檔橘霎,但是手動(dòng)去寫,似乎又太麻煩殖属,于是乎姐叁,出現(xiàn)了各種各樣的自動(dòng)化生成的API文檔框架,其中比較出名的有Swagger洗显。今天我們不說Swagger外潜,我們說說NodeJs-Express中的apidoc。先看個(gè)Api圖示:

Api文檔配圖

那下面我們就具體看看怎么使用這個(gè)ApiDoc框架吧挠唆!

登錄ApiDoc官網(wǎng)橡卤,熟悉官方文檔 ApiDoc官網(wǎng)

由官網(wǎng)所知,我們使用WebStorm創(chuàng)建好Express項(xiàng)目后损搬,需要安裝一個(gè)ApiDoc庫,代碼如下:

npm i apidoc -g   #全局安裝

接著配置api-doc

方式一:根目錄配置apidoc.json

{
  "name": "example",
  "version": "0.1.0",
  "description": "apiDoc basic example",
  "title": "Custom apiDoc browser title",
  "url" : "https://api.github.com/v1"
}

方式二:項(xiàng)目package.json配置api-doc

{
  "name": "helo",
  "version": "0.0.0",
  "private": true,
  "scripts": {
    "start": "node ./bin/www"
  },
  "dependencies": {
    "cookie-parser": "~1.4.3",
    "debug": "~2.6.9",
    "ejs": "~2.5.7",
    "express": "~4.16.0",
    "http-errors": "~1.6.2",
    "morgan": "~1.9.0"
  },
  "devDependencies": {
    "express-session": "^1.15.6",
    "mysql": "^2.15.0"
  },
  "apidoc": {  //配置api-doc
    "title": "接口文檔", //Api-Doc的網(wǎng)頁Title
    "url": "http://localhost:3000" //Api測(cè)試需要這個(gè)地址,地址必須正確
  }
}

編寫api代碼

然后通過在項(xiàng)目的public文件夾下面新建一個(gè)apidoc目錄巧勤。接著嵌灰,我們需要編寫router里的代碼,創(chuàng)建一個(gè)api目錄颅悉,里面編寫一個(gè)User.js接口的東西沽瞭。

文件目錄如下:

項(xiàng)目結(jié)構(gòu)圖

范例:

let express = require('express');
let router = express.Router();

/**
 * @api {post} /api/user/submit-login 用戶登錄
 * @apiDescription 用戶登錄
 * @apiName submit-login
 * @apiGroup User
 * @apiParam {string} loginName 用戶名
 * @apiParam {string} loginPass 密碼
 * @apiSuccess {json} result
 * @apiSuccessExample {json} Success-Response:
 *  {
 *      "success" : "true",
 *      "result" : {
 *          "name" : "loginName",
 *          "password" : "loginPass"
 *      }
 *  }
 * @apiSampleRequest http://localhost:3000/api/user/submit-login
 * @apiVersion 1.0.0
 */
router.post('/submit-login', function (req, res, next) {
    let loginName = req.body.loginName;
    let loginPass = req.body.loginPass;
    res.json({
        success: true,
        result: {
            name: loginName,
            password: loginPass
        }
    });
});

module.exports = router;

具體的注解參數(shù)可以查看這個(gè)地址: ApiDoc官網(wǎng)注解說明鏈接

項(xiàng)目terminal執(zhí)行命令行:

apidoc -i routes/ -o public/apidoc/

運(yùn)行

生成成功后,我們就可以測(cè)試運(yùn)行api文檔了剩瓶,訪問路徑:http://localhost:3000/apidoc/index.html

如果運(yùn)行成功驹溃,則就會(huì)看到我們一開始的文檔配圖了。Good Luck!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末延曙,一起剝皮案震驚了整個(gè)濱河市豌鹤,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌枝缔,老刑警劉巖布疙,帶你破解...
    沈念sama閱讀 211,290評(píng)論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異愿卸,居然都是意外死亡灵临,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,107評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門趴荸,熙熙樓的掌柜王于貴愁眉苦臉地迎上來儒溉,“玉大人,你說我怎么就攤上這事发钝《倩粒” “怎么了?”我有些...
    開封第一講書人閱讀 156,872評(píng)論 0 347
  • 文/不壞的土叔 我叫張陵笼平,是天一觀的道長园骆。 經(jīng)常有香客問我,道長寓调,這世上最難降的妖魔是什么锌唾? 我笑而不...
    開封第一講書人閱讀 56,415評(píng)論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮夺英,結(jié)果婚禮上晌涕,老公的妹妹穿的比我還像新娘。我一直安慰自己痛悯,他們只是感情好余黎,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,453評(píng)論 6 385
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著载萌,像睡著了一般惧财。 火紅的嫁衣襯著肌膚如雪巡扇。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,784評(píng)論 1 290
  • 那天垮衷,我揣著相機(jī)與錄音厅翔,去河邊找鬼。 笑死搀突,一個(gè)胖子當(dāng)著我的面吹牛刀闷,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播仰迁,決...
    沈念sama閱讀 38,927評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼甸昏,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了徐许?” 一聲冷哼從身側(cè)響起施蜜,我...
    開封第一講書人閱讀 37,691評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎绊寻,沒想到半個(gè)月后花墩,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,137評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡澄步,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,472評(píng)論 2 326
  • 正文 我和宋清朗相戀三年冰蘑,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片村缸。...
    茶點(diǎn)故事閱讀 38,622評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡祠肥,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出梯皿,到底是詐尸還是另有隱情仇箱,我是刑警寧澤,帶...
    沈念sama閱讀 34,289評(píng)論 4 329
  • 正文 年R本政府宣布东羹,位于F島的核電站剂桥,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏属提。R本人自食惡果不足惜权逗,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,887評(píng)論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望冤议。 院中可真熱鬧斟薇,春花似錦、人聲如沸恕酸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,741評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽蕊温。三九已至袱箱,卻和暖如春遏乔,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背发笔。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評(píng)論 1 265
  • 我被黑心中介騙來泰國打工按灶, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人筐咧。 一個(gè)月前我還...
    沈念sama閱讀 46,316評(píng)論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像噪矛,于是被迫代替她去往敵國和親量蕊。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,490評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容