寫完api介面,就需要編寫api文件了,如果一個個手寫的話就很麻煩,就得使用apidoc只需要通過寫註釋,就可以快速生成文件了。
安裝
第一步先安裝全域性模組apidoc。
npm install apidoc -g
複製程式碼
修改介面的註釋
找到novel-api專案routes下面的index.js檔案,註釋修改成如下
/**
* @api {get} /index 請求首頁資料
* @apiVersion 1.0.0
* @apiName 獲取首頁資料
* @apiGroup index
*
*
* @apiSuccess {Number} flag 是否獲取到資料 1成功 0失敗
* @apiSuccess {Array} books 返回書籍內容
* @apiSuccess {String} msg 返回資訊
*
* @apiSuccessExample {json} Success-Response:
* HTTP/1.1 200 OK
* {
* "flag": 1,
* "books": [
* {
* "_id": "5816b415b06d1d32157790b1",
* "title": "聖墟",
* "author": "辰東",
* "shortIntro": "在破敗中崛起,在寂滅中復甦。滄海成塵,雷電枯竭,那一縷幽霧又一次臨近大地,世間的枷鎖被開啟了,一個全新的世界就此揭開神祕的一角……",
* "cover": "http://statics.zhuishushenqi.com/agent/http%3A%2F%2Fimg.1391.com%2Fapi%2Fv1%2Fbookcenter%2Fcover%2F1%2F1228859%2F1228859_fac7917a960547eb953edf0b740cef3a.jpg%2F",
* "site": "zhuishuvip",
* "majorCate": "玄幻",
* "minorCate": "東方玄幻",
* "allowMonthly": false,
* "banned": 0,
* "latelyFollower": 283375,
* "retentionRatio": "73.42"
* }
* ],
* "msg": "OK"
* }
*
*
* @apiErrorExample Error-Response:
* HTTP/1.1 404 Not Found
* { "flag": 0, "msg": "rankingId有問題" }
*/
複製程式碼
@api {method} path [title]
@api 如果沒有@api apidoc會忽略這段註釋
method 請求的方法
path 路徑
title 標題
@apiVersion version
設定文件塊的版本。
version 版本號
@apiName name
定義方法文件塊的名稱。名稱將用於生成的輸出中的子導航。
name 方法的名稱
@apiGroup name
定義方法文件塊屬於哪個組。組將用於生成的輸出中的主導航。
name 組的名稱。也用作導航標題。
@apiSuccess [(group)] [{type}] field [description]
成功返回引數。
(group) 可選 所有引數將按這個名稱分組。沒有組,預設Success 200設定。
{type} 可選 返回型別
field 返回識別符號
description 描述
@apiParamExample [{type}] [title]
example
引數請求示例。
{type} 可選 響應格式
title 示例的簡稱
example 詳細的例子
@apiErrorExample [{type}] [title]
example
錯誤返回訊息的示例,輸出為預格式化程式碼。
{type} 可選 響應格式
title 示例的簡稱
example 詳細的例子
配置npm run doc
開啟package.json檔案增加doc命令配置
"doc": "apidoc -i routes/ -o public/"
複製程式碼
routes/ 要輸出API文件的資料夾。
public/ 輸出文件到public資料夾,沒有回自動建立。
執行 npm run doc
訪問 http://localhost:3000/ 就可以看到生成好的API文件了。