flask项目集成swagger的方法


Posted in Python onDecember 09, 2020

 

此次主要介绍介绍在flask框架中如何集成swagger文档, 我们知道以前给同事提供接口文档主要是写一个文档, 当遇到频繁修改时,就需要更新文档非常麻烦, 这时swagger文档就出现了,一个在线得接口文档,同事可以在线上查看接口文档, 当需要修改接口时秩序修改对应得代码,文档也会随之更新。如下图所示。

flask项目集成swagger的方法

此次集成参考flask-restplus官方文档,flask-restplus框架是flask-restful框架的一个加强版, 类似django框架的rest framework框架,应用前得先安装框架执行命令:

pip install flask-restplus

然后结合官网写个简单示例感受一下:

from flask import Flask
from flask_restplus import Api, Resource, fields, reqparse

app = Flask(__name__)
api = Api(app, version='1.0', title='TodoMVC API', description='A simple TodoMVC API',)

ns = api.namespace('todo', description='TODO operations')               # 模块命名空间

todo = api.model('Todo', {                               # 返回值模型
  'id': fields.Integer(readonly=True, description='The task unique identifier'),
  'task': fields.String(required=True, description='The task details')
})

parser = reqparse.RequestParser()                      # 参数模型
parser.add_argument('id', type=str, required=True, help="id")
parser.add_argument('name', type=str, required=True, help="名称")
parser.add_argument('volume', type=int, required=True, help="方量")


class TodoDAO(Resource):
  def __init__(self, *args, **kwargs):
    super().__init__(*args, **kwargs)
    self.params = parser.parse_args()

  @ns.expect(parser)                  # 用于解析对应文档参数,             
  @ns.response(200, "success response", todo)      # 对应解析文档返回值
  def get(self):
    return self.params


ns.add_resource(TodoDAO, "/to", endpoint="to_do")

app.run()

我们启动得地址为127.0.0.1:5000得地址, 然后我们只需在浏览器打开即可查看自己写好得api文档,如下图:

flask项目集成swagger的方法

好了,至此我们已经集成好了swagger文档, 需要更详细得内容可以参考官网文档, 比方更改文档地址等。

以上就是flask项目集成swagger的方法的详细内容,更多关于flask项目集成swagger的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python三元运算符实现方法
Dec 17 Python
利用Python实现Windows定时关机功能
Mar 21 Python
Python3 加密(hashlib和hmac)模块的实现
Nov 23 Python
Python程序退出方式小结
Dec 09 Python
Python函数参数操作详解
Aug 03 Python
Python3+Appium安装使用教程
Jul 05 Python
在python中实现调用可执行文件.exe的3种方法
Jul 07 Python
Python目录和文件处理总结详解
Sep 02 Python
opencv之为图像添加边界的方法示例
Dec 26 Python
Python爬虫库BeautifulSoup的介绍与简单使用实例
Jan 25 Python
Pandas缺失值2种处理方式代码实例
Jun 13 Python
Python list去重且保持原顺序不变的方法
Apr 03 Python
python的dict判断key是否存在的方法
Dec 09 #Python
python RSA加密的示例
Dec 09 #Python
python中把元组转换为namedtuple方法
Dec 09 #Python
python不同版本的_new_不同点总结
Dec 09 #Python
python中_del_还原数据的方法
Dec 09 #Python
call在Python中改进数列的实例讲解
Dec 09 #Python
python中的对数log函数表示及用法
Dec 09 #Python
You might like
将数字格式的计算结果转为汉字格式
2006/10/09 PHP
php基础学习之变量的使用
2011/06/09 PHP
php中curl使用指南
2015/02/05 PHP
PHP常见数组排序方法小结
2018/08/20 PHP
学习ExtJS Column布局
2009/10/08 Javascript
JS辨别访问浏览器判断是android还是ios系统
2014/08/19 Javascript
详解js闭包
2014/09/02 Javascript
深入理解JavaScript系列(26):设计模式之构造函数模式详解
2015/03/03 Javascript
jQuery链式调用与show知识浅析
2016/05/11 Javascript
基于jQuery实现滚动切换效果
2016/12/02 Javascript
VUE利用vuex模拟实现新闻点赞功能实例
2017/06/28 Javascript
Vue 第三方字体图标引入 Font Awesome的方法
2018/09/28 Javascript
Element Input组件分析小结
2018/10/11 Javascript
vue slot与传参实例代码讲解
2019/04/28 Javascript
axios实现简单文件上传功能
2019/09/25 Javascript
JS如何在不同平台实现多语言方式
2020/07/16 Javascript
JavaScript 常见的继承方式汇总
2020/09/17 Javascript
利用Python的Flask框架来构建一个简单的数字商品支付解决方案
2015/03/31 Python
在Python中使用mongoengine操作MongoDB教程
2015/04/24 Python
Python基于FTP模块实现ftp文件上传操作示例
2018/04/23 Python
Python自动生成代码 使用tkinter图形化操作并生成代码框架
2019/09/18 Python
Numpy 多维数据数组的实现
2020/06/18 Python
cookies应对python反爬虫知识点详解
2020/11/25 Python
CSS中垂直居中的简单实现方法
2015/07/06 HTML / CSS
墨西哥运动服饰和鞋网上商店:Netshoes墨西哥
2016/07/28 全球购物
Hoover胡佛官网:美国吸尘器和洗地机品牌
2019/01/09 全球购物
Currentbody美国/加拿大:美容仪专家
2020/03/09 全球购物
酒店实习个人鉴定
2013/12/07 职场文书
毕业生找工作的求职信范文
2013/12/24 职场文书
《蓝色的树叶》教学反思
2014/02/24 职场文书
解除合同协议书
2014/04/17 职场文书
2014年学习全国道德模范事迹思想汇报
2014/09/15 职场文书
教师学习八项规定六项禁令思想汇报
2014/09/27 职场文书
买房协议书范本
2014/10/23 职场文书
2014年宣传部工作总结
2014/11/12 职场文书
《纸船和风筝》教学反思
2016/02/18 职场文书