apidoc的安装,参考:https://blog.csdn.net/qq_36386771/article/details/82149848

生产文档,需要先编写一个apidoc.json对接口文档进行基本说明,在编写一些接口定义文档(采用js),然后运行命令,生成对于的html网页

demo案例:目录结构:

  1. xxxx/apidoc_demo/apidoc.json 接口文档的总说明
  2. xxxx/apidoc_dem/myapp/demo.js 接口文档具体接口的定义
  3. xxxx/apidoc_dem/apidoc/ 用于存放生成的html文件
    xxxx/apidoc_demo/目录下执行命令 >> apidoc -i myapp/ -o apidoc/

新建apidoc.json

  1. {
  2. "name": "p1app_v2",
  3. "description": "P1APP二期的接口文档",
  4. "version": "0.0.1",
  5. "title": "p1app_v2_doc",
  6. "url": "https://localhost:8010/p1app_v2"
  7. }

新建一个demo.js

  1. /**
  2. * @apiDefine Index 首页
  3. */
  4.  
  5. /**
  6. * @api {post} /Index/getVip 获取vip列表 页面加载时自动获取
  7. * @apiName getVip
  8. * @apiGroup Index
  9. * @apiParam {string} req1 请求值
  10. * @apiSuccess (200) {Object[]} profiles List of user profiles.
    * @apiSuccess (200) {Number} profiles.age Users age.
    * @apiSuccess (200) {String} profiles.image Avatar-Image.
    * @apiSuccess (201) {String} failed Avatar-Image.
    * @apiSuccessExample {json} Success-Response:
  11. * {
  12. *   res1:"test"
  13. * }
  14. */
  15.  
  16. /**
  17. * @api {get} /Index/getWeather 获取指定日期的逐小时气象数据信息
  18. * @apiName getWeather
  19. * @apiGroup Index
  20. * @apiDescription 根据传递的行政区编码,获取所在城市的信息,得到城市对应的气象数据。
  21. * @apiParam {String} [date] 日期,格式yyyy-MM-dd,不传,默认为当日
  22. * @apiParam {String} region_code 行政区编码,如"500244"
  23. * @apiParam {String="hour","day","week","month","year"} data_type 数据类型
  24. * @apiParam {Number=10,20} num 记录最大返回条数
  25. * @apiParam {String{5...10}} strlen 字符串长度限制
  26. * @apiParam {Number{5-10}} num_range 数字范围
  27. * @apiParam {String{5-10}} str_range 字符串范围
  28. * @apiVersion 0.0.1
  29. * @apiSuccess {JsonObject} result JsonObject对象
  30. * @apiSuccessExample Success-Response:
  31. {
  32. "code": 0,
  33. "msg": "success",
  34. "data":[
  35. {
  36. "date": "2019-05-30 01",
  37. "humidity": 0.97
  38. },
  39. {
  40. "date": "2019-05-30 02",
  41. "humidity": 0.98
  42. }
  43. ]
  44. }
  45. */

效果图如下:

apidoc的注解说明:

  1. @api {get} /users/:user_id Request User Information
  2. 最主要的参数,”{get}”定义了HTTP请求是GETAPI地址是”/users/:user_id”,文档中API的名称是”Request User Information”。
  3.  
  4. @apiVersion 0.1.0
  5. API的版本号,默认显示在API名称的右方。该参数可用来在不同的版本之间做比较,后面会介绍。
  6.  
  7. @apiName GetUser
  8. API名称,不影响文档。
  9.  
  10. @apiGroup User
  11. API分组名,文档内容中和菜单栏中同一组的API会在一同显示,方便阅读。
  12.  
  13. @apiPermission admin
  14. API的访问权限,文档中默认会API地址下面显示。没有权限要求的话,此项可以省略。
  15.  
  16. @apiDescription API to get the user information.
  17. API的详细描述,默认显示在API名称的下方。
  18.  
  19. @apiExample Example usage:
  20. API调用示例,该参数的下一行就是示例的内容,直到有空行结束。可以定义多个@apiExample,默认在文档中会以标签形式列出,标签名就是”Example usage:”。
  21.  
  22. @apiParam {Number} user_id The users unique ID.
  23. API参数字段介绍,”{Number}”定义了字段类型,”user_id”是字段名称,后面则是字段描述。可以定义多个@apiParam字段。
  24.  
  25. @apiSuccess {String} name Name of the User.
  26. API成功后返回的字段,如同@apiParam,”{String}”定义了字段类型,”name”是返回字段名称,后面则是字段描述。可以定义多个@apiSuccess字段。
  27.  
  28. @apiSuccessExample {json} Success-Response:
  29. 显示一个API成功返回后Response响应的示例,”{json}”代表响应体是JSON类型。该参数的下行就是响应体内容,直到有空行结束。可以定义多个@apiSuccessExample,默认在文档中会以标签形式列出,标签名就是”Success-Response:”。
  30.  
  31. @apiError UserNotFound User was not found.
  32. API发生错误后的返回,”UserNotFound”是错误名称,后面则是错误描述。可以定义多个错误返回。
  33.  
  34. @apiErrorExample {json} Error-Response:
  35. 显示一个API错误返回后Response响应的示例,”{json}”代表响应体是JSON类型。该参数的下行就是响应体内容,直到有空行结束。可以定义多个@apiErrorExample,默认在文档中会以标签形式列出,标签名就是”Error-Response:”。
  36.  
  37. @apiSampleRequest http://localhost:5000/users/:user_id
  38. 文档提供的API Sample测试的地址。其实在”apidoc.json”中配过”sampleUrl”项后,此参数即可省去,除非这个API的测试URL比较特殊,需特别指定。

使用js编写,这些注解都写在注释中,上面的内容引用自:https://www.jianshu.com/p/d324810d694d

参数定义说明:参考https://blog.csdn.net/qq_14824885/article/details/87793476#apiParam_251

apidoc使用中文说明:https://blog.csdn.net/qq_14824885/article/details/87793476

apidoc使用英文说明(官方文档):http://apidocjs.com/

针对版本变更以及对比,待继续学习.......

apidoc学习(接口文档定义取代word)的更多相关文章

  1. flask + apidoc 生成接口文档(附加一个坑)

    具体使用方法见这里 https://blog.csdn.net/lynnyq/article/details/79254290 挺详细的,我就不抄了. 重点是一个坑: 执行 python manage ...

  2. apidoc接口文档的快速生成

    官方文档连接:http://apidocjs.com/#demo apidoc是一个轻量级的在线REST接口文档生成系统,支持多种主流语言,包括Java.C.C#.PHP和Javascript等.使用 ...

  3. 接口文档神器之apidoc

    //@desn:apidoc linux环境  windows环境使用 //@desn:码字不宜,转载请注明出处 //@author:张慧源  <turing_zhy@163.com> / ...

  4. web接口文档apidoc的使用

    1.安装 npm install apidoc -g 2.新建src文件夹,里面放2个文件,test.js和apidoc.json 3.test.js /** * @api {get} /query_ ...

  5. 在sublime3中docblockr插件配置apidoc接口文档注释模板

    写在前面: 将进行3个步骤配置 1.在sublime3中安装插件docblockr,可以参考http://www.cnblogs.com/jiangxiaobo/p/8327709.html 2.安装 ...

  6. Spring MVC学习总结(9)——Spring MVC整合swagger自动生成api接口文档

    Swagger 号称:世界最流行的API框架,官网:http://swagger.io/,Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 Web 服务.总 ...

  7. 快速根据注释生成接口文档网页工具——Apidoc的使用教程

    1,安装Node.js的npm工具环境: 如有不懂,请看我的博客:“https://blog.csdn.net/sinat_28371057/article/details/81612661“ 2,n ...

  8. apidoc 接口文档系统

    代码未动,文档先行.apidoc可以方便地维护接口文档.模拟响应数据.前后端分离.导出PDF文档. 特性说明 可视化编辑:支持表单界面编辑接口,不必手动编辑swagger.json 接口模拟响应:支持 ...

  9. FastAPI 学习之路(二十)接口文档配置相关

    系列文章: FastAPI 学习之路(一)fastapi--高性能web开发框架 FastAPI 学习之路(二) FastAPI 学习之路(三) FastAPI 学习之路(四) FastAPI 学习之 ...

随机推荐

  1. Spring源码之循环依赖

    https://www.cnblogs.com/longy2012/articles/12834762.html https://www.bilibili.com/video/BV1iD4y1o7pM ...

  2. C# 9 record 并非简单属性 POCO 的语法糖

    C# 9 record 并非简单属性 POCO 的语法糖 最近升级专案到大统一 .NET 5 并使用 C#9 语法尝试改写套件,发现之前以为 record 只是简单属性 POCO 的简化语法糖的认知是 ...

  3. 深度分析:面试90%被问到的 Session、Cookie、Token,看完这篇你就掌握了!

    Cookie 和 Session HTTP 协议是一种无状态协议,即每次服务端接收到客户端的请求时,都是一个全新的请求,服务器并不知道客户端的历史请求记录:Session 和 Cookie 的主要目的 ...

  4. python中a+=b 和a=a+b的结果一样吗

    这里涉及到可变类型和不可变类型. 可变类型:列表,字典,集合 不可变:数字,字符串,元祖 先看一下不可变类型的运算: +=运算 >>> a, b = 1, 2 >>> ...

  5. Guitar Pro教程之虚拟吉他功能讲解

    上一章节我们讲述了Guitar Pro的组织小节的相关功能,那么本章节我们还是采用图文结合的方式为大家讲解关于{cms_selflink page='index' text='Guitar Pro'} ...

  6. 【PUPPETEER】初探之原生frame切换(四)

    一.知识点 page.frames() 使用frame.url() 获取framed的url x.getAttribute('x') 获取元素内值 二.实例 问:什么是iframe? 答:iframe ...

  7. ubuntu安装php的 redis扩展

    wget https://github.com/phpredis/phpredis/archive/2.2.4.tar.gztar -zxvf 2.2.4.tar.gz cd phpredis-2.2 ...

  8. Java基础教程——继承

    继承 一个类 可以 继承自 另一个类: 派生的类(子类)继承父类的方法和数据成员: 关键字:子类 extends 父类. public class 继承 { public static void ma ...

  9. 《Spring Boot 实战纪实》之如何攥写需求文档

    目录 前言 (思维篇)人人都是产品经理 1.需求文档 1.1 需求管理 1.2 如何攥写需求文档 1.3 需求关键点文档 2 原型设计 2.1 缺失的逻辑 2.2 让想法跃然纸上 3 开发设计文档 3 ...

  10. .Net编码规范整理

    前言 此处只是整理并记录下.Net开发规范以便加深编码规范.一个好的编程规范可以让自己程序可读性,让自己编码更规范,分为两部分:通用规范..Net开发规范. 微软通用编程规范 明确性和一致性 库的使用 ...