初衷

记得以前写接口,写完后会整理一份API接口文档,而文档的格式如果没有具体要求的话,最终展示的文档则完全决定于开发者的心情。也许多点,也许少点。甚至,接口总是需要适应新需求的,修改了,增加了,这份文档维护起来就很困难了。于是发现了swagger,自动生成文档的工具。

swagger介绍

首先,官网这样写的:

Swagger – The World's Most Popular Framework for APIs.

因为自强所以自信。swagger官方更新很给力,各种版本的更新都有。swagger会扫描配置的API文档格式自动生成一份json数据,而swagger官方也提供了ui来做通常的展示,当然也支持自定义ui的。不过对后端开发者来说,能用就可以了,官方就可以了。

最强的是,不仅展示API,而且可以调用访问,只要输入参数既可以try it out.

效果为先,最终展示doc界面,也可以设置为中文:

针对python flask的swagger客户端:

flask-swagger

A Swagger 2.0 spec extractor for Flask

Install:

pip install flask-swagger

Flask-swagger provides a method (swagger) that inspects the Flask app for endpoints that contain YAML docstrings with Swagger 2.0 Operation objects.

class UserAPI(MethodView):def post(self): """  Create a new user  ---  tags:  - users  definitions:  - schema:  id: Group  properties:  name:  type: string  description: the group's name  parameters:  - in: body  name: body  schema:  id: User  required:  - email  - name  properties:  email:  type: string  description: email for user  name:  type: string  description: name for user  address:  description: address for user  schema:  id: Address  properties:  street:  type: string  state:  type: string  country:  type: string  postalcode:  type: string  groups:  type: array  description: list of groups  items:  $ref: "#/definitions/Group"  responses:  201:  description: User created  """ return {}

可以参考:https://github.com/gangverk/flask-swagger

针对Java spring mvc的可以看这里:http://www.cnblogs.com/woshimrf/p/5863318.html

针对swagger yaml本身的一些介绍:https://www.gitbook.com/book/huangwenchao/swagger/details

转载于:https://www.cnblogs.com/bonelee/p/6297048.html

使用swagger作为restful api的doc文档生成——从源码中去提取restful URL接口描述文档...相关推荐

  1. japidocs怎么设置参数必填_JApiDocs 动态生成接口文档,并解析java 源码中的注释...

    1.介绍 JApiDocs 是一个符合 Java 编程习惯的 Api 文档生成工具.最大程度地利用 Java 的语法特性,你只管用心设计好接口,添加必要的注释,JApiDocs 会帮你导出一份漂亮的 ...

  2. 【Android 内存优化】Android 原生 API 图片压缩原理 ( 图片质量压缩方法 | 查找 Java 源码中的 native 方法对应的 C++ 源码 )

    文章目录 一. 图片质量压缩方法 二. 查找对应的 Native 方法源码 三. 分析 Bitmap.cpp 中动态注册 Native 方法 在博客 [Android 内存优化]图片文件压缩 ( An ...

  3. 如何将word文档生成二维码

    最近遇到很多客户咨询如何将word文档生成二维码,如何将视频生成二维码,目前二维码中是无法直接储存word文档,视频一类的,唯一的途径就是先把文档和视频信息上传到网站服务器上,然后在二维码生成器中利用 ...

  4. 迅为IMX6Q开发板独立文档和程序源码汇总158个

    迅为IMX6开发板支持五种系统Android4.4/6.0/7.1系统:Linux + Qt4.7/5.7系统:  Ubuntu12.04/16.04系统:Debian 9.9 系统:Yocto系统( ...

  5. [pbootcms模板]作文网站/文档下载网站源码

    正文: 这是一款文档下载网站源码,作文网站pbootcms模板,适用于学习资料.文档资源.作文网.文章下载.资讯.论文等相关网站的建设,200+整站网页,您可轻松定制. 代码放在百度网盘,直接下载可以 ...

  6. CTPN源码解析5-文本线构造算法构造文本行

    文本检测算法一:CTPN CTPN源码解析1-数据预处理split_label.py CTPN源码解析2-代码整体结构和框架 CTPN源码解析3.1-model()函数解析 CTPN源码解析3.2-l ...

  7. flexpaper php 代码,FlexPaper Flex在线显示PDF文档的php源码下载|FlexPaper Flex在线显示PDF文档的php源码官方下载-太平洋下载中心...

    FlexPaper Flex在线显示PDF文档的php源码是Php源码频道下深受用户喜爱的软件,太平洋下载中心提供FlexPaper Flex在线显示PDF文档的php源码官方下载.FlexPaper ...

  8. 来看阿迅为4412开发板独立文档和程序源码汇总目录

    独立文档和程序源码汇总目录,学习Linux4412开发板目录一览 部分视频观看地址( 更多视频教程可在B站上搜索'北京迅为' ) iTOP-4412精英版开发板硬件连接 https://www.bil ...

  9. 计算机毕业设计Java在线文档管理系统(源码+系统+mysql数据库+Lw文档)

    计算机毕业设计Java在线文档管理系统(源码+系统+mysql数据库+Lw文档) 计算机毕业设计Java在线文档管理系统(源码+系统+mysql数据库+Lw文档) 本源码技术栈: 项目架构:B/S架构 ...

最新文章

  1. mysql 远程_MYSQL开启远程访问权限的方法
  2. ViewPager Indicator的使用方法
  3. mac搭建php审计环境,[php审计实战篇]Simple-Log v1.6 安装逻辑问题
  4. Maven插件tomcat7-maver-plugin
  5. [Google Guava] 1.2-前置条件
  6. 用Python爬一爬那些年你硬盘存过的老师
  7. [系统安全] 四十五.APT系列(10)Metasploit后渗透技术信息收集、权限提权和功能模块详解
  8. (原)产品化:架构、过程管理
  9. Cannot add or update a child row: a foreign key constraint fails (`university`.`instructor`, CONSTRA
  10. IT程序猿常用编辑工具:UltraEdit for Mac v21.00.0.12中文版
  11. 网络拓扑结构_全球网络拓扑测绘这样来实现
  12. Redis入门小案例
  13. Linux环境安装之Ant
  14. php 复制到剪切板,兼容多种浏览器”复制到剪贴板”的解决方案
  15. vue开发app项目实例
  16. 米尔科技AM335X核心板,AM3359核心板,AM3352核心板,TI核心板,Cortex-A8核
  17. 机器学习 | 交叉验证
  18. 【游戏面包屑】简单的导航栏设计
  19. aslkjdkkjas
  20. 热图展示单细胞转录组基因在不同组中表达阳性细胞差异

热门文章

  1. 松下服务器分频器输出信号与,基础资料松下PANASONIC伺服驱动器MADHT1507E
  2. java itemcf_大规模电商推荐数据分析-基于ItemCF的召回
  3. java 线程崩溃_java语言中application异常退出和线程异常崩溃的捕获方法,并且在捕获的钩子方法中进行异常处理...
  4. 如何将两个集合合并_如何将剪切的音频文件进行合并
  5. android xml文件操作类,android操作xml
  6. 服务器端口进程未响应,Tomcat正在运行,但8080端口未响应
  7. 【以太坊】在测试网络上发布智能合约
  8. react native 的赋值比较,空字符串以及undefined
  9. mongodb视频教程云盘,深度讲解Java多线程开发—电子表项目实现
  10. 【操作系统】Classical Problems of Synchronization-信号量机制