/**
* @apiDefine MyError
* @apiError UserNotFound The <code>id</code> of the User was not found.
*/
/**
* @api {get} /user/:id
* @apiUse MyError
*/
/**
* @apiDefine admin User access only
* This optional description belong to to the group admin.
*/
/**
* @api {get} /user/:id
* @apiPermission admin
*/
3.3 @apiDeprecated
@apiDeprecated [text]
标注一个接口已经被弃用
参数列表:
参数
必填
描述
text
yes
多行文字描述
例:
**
* @apiDeprecated
*/
/**
* @apiDeprecated use now (#Group:Name).
*
* Example: to set a link to the GetDetails method of your group User
* write (#User:GetDetails)
*/
3.4 @apiDescription
@apiDescription text
api接口的详细描述
参数列表:
参数
必填
描述
text
yes
多行文字描述
/**
* @apiDescription This is the Description.
* It is multiline capable.
*
* Last line of Description.
*/
一、apidoc 简介
apidoc是一款可以有源代码中的注释直接自动生成api接口文档的工具,它几乎支持目前主流的所有风格的注释。例如:Javadoc风格注释(可以在C#, Go, Dart, Java, JavaScript, PHP, TypeScript等语言中使用)
CoffeeScript
Elixir
Erlang (注释中的‘%’是可选的)
Perl (Doxygen)
Python
Ruby
Lua
二、apidoc 使用
可以通过以下命令安装 apidoc:
运行:
2.1 apidoc 命令参数列表:
例如: apidoc -f ".\.js$" -f ".\.ts$" 意为只读取后缀名为js和ts的文件
默认值:.clj .cls .coffee .cpp .cs .dart .erl .exs?
.go .groovy .ino? .java .js .jsx .kt .litcoffee lua .p .php? .pl .pm .py .rb .scala .ts .vue
例如:apidoc -e ".*\.js$" 意为不读取后缀名为js的文件
默认:''
例如:apidoc -i myapp/ 意为读取myapp/目录下面的源文
默认值:./
例如:apidoc -o doc/ 意为输出文档到doc目录下
默认值:./doc/
例如: apidoc -t mytemplate/
默认:path.join(__dirname, '../template/')(使用默认模板)
例如: apidoc -c config/
默认:./
例如: apidoc -p true
默认:false
例如: apidoc -v true
默认:false
2.2 配置(apidoc.json)
每次导出接口文档都必须要让 apidoc 读取到 apidoc.json 文件(如果未添加配置文件,导出报错),你可以在你项目的根目录下添加 apidoc.json 文件,这个文件主要包含一些项目的描述信息,比如标题、简短的描述、版本等,你也可以加入一些可选的配置项,比如页眉、页脚、模板等。 apidoc.json
如果你的项目中使用了 package.json 文件(例如: node.js 工程),那么你可以将 apidoc.json 文件中的所有配置信息放到 package.json 文件中的 apidoc 参数中: package.json
apidoc.json 配置项
如果apidoc.json文件中没有配置该参数,apidoc会尝试从pakcage.json文件中读取
如果apidoc.json文件中没有配置该参数,apidoc会尝试从pakcage.json文件中读取
如果apidoc.json文件中没有配置该参数,apidoc会尝试从pakcage.json文件中读取
例如:https://api.github.com/v1
如果未定义,那么所有名称会自动排序
三、 apidoc注释参数
3.1 @api 【必填字段】否则,apidoc会忽略该条注释
例:
3.2 @apiDefine
定义注释模块(类似于代码中定义一个常量),对于一些通用可复用的注释模块(例如:接口错误响应模块),只需要在源代码中定义一次,便可以在其他注释模块中随便引用,最后在文档导出时会自动替换所引用的注释模块,定义之后您可以通过@apiUse来引入所定义的注释模块。(注:可以同时使用@apiVersion来定义注释模块的版本) 参数列表:
例:
3.3 @apiDeprecated
例:
3.4 @apiDescription
api接口的详细描述 参数列表:
3.5 @apiError
错误返回参数 参数列表:
例:
3.6 @apiErrorExample
接口错误返回示例(格式化输出) 参数列表:
例:
3.7 @apiExample
接口方式请求示例 参数列表:
3.8 @apiGroup
定义接口所属的接口组,虽然接口定义里不需要这个参数,但是您应该在每个接口注释里都添加这个参数,因为导出的接口文档会以接口组的形式导航展示。 参数列表:
例:
3.9 @apiHeader
描述接口请求头部需要的参数(功能类似@apiParam) 参数列表: