Ubuntu安装apiDoc以及入门教程

2024-08-26 06:48

本文主要是介绍Ubuntu安装apiDoc以及入门教程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一.apiDoc简介

apiDoc是用来生成RESTful风格Web API文档的工具,支持现在流行的大部分编程语言,如Python,Java,C#, Go, Dart, Java, JavaScript, PHP, Scala 等。在源代码的注释中使用apiDoc提供的注解信息来生成文档信息。

在我们日常开发中一定会写开发文档,以前常见的做法是维护一个或多个markdown文件,每次api改动时都要去对应文件位置进行修改。这种方式维护起来相当麻烦,而且相对于网页来说markdown只能提供简单的阅览功能不能实时查看接口调用结果,对开发者来说api也不友好。所以找一个更好的文档处理方式已经是迫在眉睫,现在apiDoc可以让你可以解脱了。
apiDoc的gitHub地址:https://github.com/apidoc/apidoc。
apiDoc的文档地址:http://apidocjs.com/

二.Ubuntu安装apiDoc

按照官方文档安装apiDoc会出现一些问题。主要原因是因为apiDoc需要依赖nodejs,所以需要先安装nodejs然后安装apiDoc就可以了。

2.1 安装nodejs
更新ubuntu软件源

sudo apt-get update
sudo apt-get install -y python-software-properties software-properties-common
sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update

安装nodejs

sudo apt-get install nodejs
sudo apt install nodejs-legacy
sudo apt install npm

更新npm的包镜像源

sudo npm config set registry https://registry.npm.taobao.org
sudo npm config list

全局安装n管理器(用于管理nodejs版本)

sudo npm install n -g

安装最新的nodejs(stable版本)

sudo n stable
sudo node -v

2.2安装apiDoc

上面的操作顺利完成后再执行下面命令就OK了。

sudo npm install apidoc -g

三.apiDoc入门

3.1 运行官方Demo

首先下载官方github上的源代码。
然后进入

apidoc/example/

最后执行

apidoc -i example/ -o doc/

这个命令就能满足基本需求了,详细的命令参数查看官方文档。生成的文档在指定的文件doc中,打开index.html。官方在线例子
apiDoc文档网页

3.2 配置文件介绍

如Demo中的文件结构
.
├── _apidoc.js 需要生成api文档的源代码文件
├── apidoc.json 配置文件
├── example.js 需要生成api文档的源代码文件
├── footer.md 生成api文档的自定义头部信息,支持markdown标签。
└── header.md 生成api文档的自定义底部信息,支持markdown标签。

apidoc.json文件相当简单对比Demo生成的文档可以轻松理解。

{"name": "apidoc-example-test","version": "0.3.0","description": "apidoc example project","title": "Custom apiDoc browser title","url" : "https://api.github.com/v1","sampleUrl": "https://api.github.com/v1","header": {"title": "My own header title","filename": "header.md"},"footer": {"title": "My own footer title","filename": "footer.md"},"template": {"withCompare": true,"withGenerator": true}
}
3.3 常用注解介绍

具体文档可参考:http://apidocjs.com/

/*** @api {get} /user/:id Read data of a User* @apiVersion 0.3.0* @apiName GetUser* @apiGroup User* @apiPermission admin** @apiDescription Compare Verison 0.3.0 with 0.2.0 and you will see the green markers with new items in version 0.3.0 and red markers with removed items since 0.2.0.** @apiParam {Number} id The Users-ID.** @apiExample Example usage:* curl -i http://localhost/user/4711** @apiSuccess {Number}   id            The Users-ID.* @apiSuccess {Date}     registered    Registration Date.* @apiSuccess {Date}     name          Fullname of the User.* @apiSuccess {String[]} nicknames     List of Users nicknames (Array of Strings).* @apiSuccess {Object}   profile       Profile data (example for an Object)* @apiSuccess {Number}   profile.age   Users age.* @apiSuccess {String}   profile.image Avatar-Image.* @apiSuccess {Object[]} options       List of Users options (Array of Objects).* @apiSuccess {String}   options.name  Option Name.* @apiSuccess {String}   options.value Option Value.** @apiError NoAccessRight Only authenticated Admins can access the data.* @apiError UserNotFound   The <code>id</code> of the User was not found.** @apiErrorExample Response (example):*     HTTP/1.1 401 Not Authenticated*     {*       "error": "NoAccessRight"*     }*/
function getUser() { return; }

重点介绍下@apiParam:
语法:

@apiParam [(group)] [{type}] [field=defaultValue] [description]

描述如何将参数传递给你的api方法。文档描述
例如: @apiParam (MyGroup) {Number} id Users unique ID.
注意:该标签适用于三种参数形式
a.动态路由:http://localhost/sutdent/:id
b.请求参数:http://localhost/sutdent?id=:id
c.表单参数:http://localhost/sutdent
在生成文档中id参数可以在“Send a Sample Request”发送时被替换成具体的值方便查看api的返回结果。

一个问题

这里抛出一个问题:apidoc是比较“底层”的文档生成方式,能否不手动写apiDoc的标签而是直接根据后端代码基于apiDoc来直接生成api文档?
答案当然是肯定有的了,有兴趣的可以自己找找看或自己写写看,如果写好了可以告诉我哦。

参考链接:http://www.jianshu.com/p/2b24cd430a7d

这篇关于Ubuntu安装apiDoc以及入门教程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1107854

相关文章

在Ubuntu上打不开GitHub的完整解决方法

《在Ubuntu上打不开GitHub的完整解决方法》当你满心欢喜打开Ubuntu准备推送代码时,突然发现终端里的gitpush卡成狗,浏览器里的GitHub页面直接变成Whoathere!警告页面... 目录一、那些年我们遇到的"红色惊叹号"二、三大症状快速诊断症状1:浏览器直接无法访问症状2:终端操作异常

python依赖管理工具UV的安装和使用教程

《python依赖管理工具UV的安装和使用教程》UV是一个用Rust编写的Python包安装和依赖管理工具,比传统工具(如pip)有着更快、更高效的体验,:本文主要介绍python依赖管理工具UV... 目录前言一、命令安装uv二、手动编译安装2.1在archlinux安装uv的依赖工具2.2从github

Ubuntu向多台主机批量传输文件的流程步骤

《Ubuntu向多台主机批量传输文件的流程步骤》:本文主要介绍在Ubuntu中批量传输文件到多台主机的方法,需确保主机互通、用户名密码统一及端口开放,通过安装sshpass工具,准备包含目标主机信... 目录Ubuntu 向多台主机批量传输文件1.安装 sshpass2.准备主机列表文件3.创建一个批处理脚

JDK8(Java Development kit)的安装与配置全过程

《JDK8(JavaDevelopmentkit)的安装与配置全过程》文章简要介绍了Java的核心特点(如跨平台、JVM机制)及JDK/JRE的区别,重点讲解了如何通过配置环境变量(PATH和JA... 目录Java特点JDKJREJDK的下载,安装配置环境变量总结Java特点说起 Java,大家肯定都

RabbitMQ 延时队列插件安装与使用示例详解(基于 Delayed Message Plugin)

《RabbitMQ延时队列插件安装与使用示例详解(基于DelayedMessagePlugin)》本文详解RabbitMQ通过安装rabbitmq_delayed_message_exchan... 目录 一、什么是 RabbitMQ 延时队列? 二、安装前准备✅ RabbitMQ 环境要求 三、安装延时队

Ubuntu如何升级Python版本

《Ubuntu如何升级Python版本》Ubuntu22.04Docker中,安装Python3.11后,使用update-alternatives设置为默认版本,最后用python3-V验证... 目China编程录问题描述前提环境解决方法总结问题描述Ubuntu22.04系统自带python3.10,想升级

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境

Python库 Django 的简介、安装、用法入门教程

《Python库Django的简介、安装、用法入门教程》Django是Python最流行的Web框架之一,它帮助开发者快速、高效地构建功能强大的Web应用程序,接下来我们将从简介、安装到用法详解,... 目录一、Django 简介 二、Django 的安装教程 1. 创建虚拟环境2. 安装Django三、创

linux安装、更新、卸载anaconda实践

《linux安装、更新、卸载anaconda实践》Anaconda是基于conda的科学计算环境,集成1400+包及依赖,安装需下载脚本、接受协议、设置路径、配置环境变量,更新与卸载通过conda命令... 目录随意找一个目录下载安装脚本检查许可证协议,ENTER就可以安装完毕之后激活anaconda安装更

Jenkins的安装与简单配置过程

《Jenkins的安装与简单配置过程》本文简述Jenkins在CentOS7.3上安装流程,包括Java环境配置、RPM包安装、修改JENKINS_HOME路径及权限、启动服务、插件安装与系统管理设置... 目录www.chinasem.cnJenkins安装访问并配置JenkinsJenkins配置邮件通知