python-tornado的接口用swagger进行包装的实例


Posted in Python onAugust 29, 2019

写这个文章的主要原因,就是因为没有相关的东西,导致我完全不知道应该怎么做,经过了两个晚上的摸索,终于搞清楚了,如果有谁需要tornado+swagger的输出模式,可以照这个套;

主要是static文件的生成

我们用swagger就是为了做一个静态页面,也就是生成一个static文件:

几个必备的工具:swagger-py-codegen我们不用他们的文件框架只需要其生成的static文件,拷贝到自己文件夹下即可;

1)需要注意的是生成文件需要用yaml文件,当编辑好文件后,最主要的是要注意base_path文件的改动,你生成的文件的请求会加上你basepath的内容,会造成请求出错, 比如 你的url:port/GET?testparas=test,那么如果说你的static文件生成的过程中,如下图所示

python-tornado的接口用swagger进行包装的实例

2)生成的文件,swagger-ui中的swagger.json文件是按照你的yaml文件生成的,index.html文件中是有地方设置swagger.json的地址的,如下图所示

python-tornado的接口用swagger进行包装的实例

3)这个时候我们可以启动我们的swagger程序,

python-tornado的接口用swagger进行包装的实例

接下来接受一下tornado中的一些设置,主要为application的设置:

在这里其实没用到tornado的高级方法,只是随意设置了一个参数进行测试:

`import tornado.web
import tornado.ioloop
import os


abs_path = os.path.dirname(os.path.abspath("__file__"))
print(abs_path)

class IndexHandler(tornado.web.RequestHandler):
 def get(self, *args, **kwargs):
  para = self.get_argument('test', None)
  self.write("test tornado {}".format(para))


if __name__ == '__main__':
 app = tornado.web.Application([
  (r'/GET', IndexHandler)
 ],
  static_path=os.path.join(abs_path, 'static')
 )
 # 监听端口
 app.listen(8000)
 tornado.ioloop.IOLoop.current().start()`

目录结构如下

python-tornado的接口用swagger进行包装的实例

生成swagger-ui的代码如下:

swagger_py_codegen -s api.yaml project-one -p demo -tlp=tornado --ui --spec

其中 ?ui ?spec是生成swagger-ui的关键代码

以上这篇python-tornado的接口用swagger进行包装的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python探索之实现一个简单的HTTP服务器
Oct 28 Python
使用django-crontab实现定时任务的示例
Feb 26 Python
python文件写入write()的操作
May 14 Python
python聚类算法解决方案(rest接口/mpp数据库/json数据/下载图片及数据)
Aug 28 Python
Python中断多重循环的思路总结
Oct 04 Python
Python SELENIUM上传文件或图片实现过程
Oct 28 Python
python隐藏类中属性的3种实现方法
Dec 19 Python
python中68个内置函数的总结与介绍
Feb 24 Python
利用Vscode进行Python开发环境配置的步骤
Jun 22 Python
Pytorch 图像变换函数集合小结
Feb 01 Python
pytorch 权重weight 与 梯度grad 可视化操作
Jun 05 Python
Pygame Rect区域位置的使用(图文)
Nov 17 Python
Python csv模块使用方法代码实例
Aug 29 #Python
python datetime中strptime用法详解
Aug 29 #Python
使用OpenCV实现仿射变换—平移功能
Aug 29 #Python
python网络编程 使用UDP、TCP协议收发信息详解
Aug 29 #Python
使用OpenCV实现仿射变换—缩放功能
Aug 29 #Python
python实现两个文件夹的同步
Aug 29 #Python
使用OpenCV实现仿射变换—旋转功能
Aug 29 #Python
You might like
全国FM电台频率大全 - 13 福建省
2020/03/11 无线电
PHP函数之error_reporting(E_ALL ^ E_NOTICE)详细说明
2011/07/01 PHP
PHP_Cooikes不同页面无法传递的解决方法
2014/03/07 PHP
PHP实现仿Google分页效果的分页函数
2015/07/29 PHP
php从数据库中读取特定的行(实例)
2017/06/02 PHP
阿里对象存储OSS在laravel框架中的使用方法
2019/10/13 PHP
JavaScript 常见对象类创建代码与优缺点分析
2009/12/07 Javascript
jQuery EasyUI API 中文文档 - ComboBox组合框
2011/10/07 Javascript
JavaScript实现点击按钮后变灰避免多次重复提交
2013/07/15 Javascript
Javascript写入txt和读取txt文件示例
2014/02/12 Javascript
jquery实现两个图片渐变切换效果的方法
2015/06/25 Javascript
基于ajax实现文件上传并显示进度条
2015/08/03 Javascript
详解处理bootstrap4不支持远程静态框问题
2018/07/20 Javascript
JS使用for in有序获取对象数据
2020/05/19 Javascript
Nodejs 微信小程序消息推送的实现
2021/01/20 NodeJs
Python编程实现的图片识别功能示例
2017/08/03 Python
Python扩展内置类型详解
2018/03/26 Python
对python:循环定义多个变量的实例详解
2019/01/20 Python
python NumPy ndarray二维数组 按照行列求平均实例
2019/11/26 Python
django使用graphql的实例
2020/09/02 Python
python可视化分析的实现(matplotlib、seaborn、ggplot2)
2021/02/03 Python
印尼太阳百货公司网站:Matahari
2018/02/04 全球购物
巴西24小时在线药房:Droga Raia
2020/05/12 全球购物
校园奶茶店创业计划书
2014/01/23 职场文书
个人实习生的自我评价
2014/02/16 职场文书
三月学雷锋活动总结
2014/06/26 职场文书
2014年档案室工作总结
2014/12/01 职场文书
优秀教师单行材料
2014/12/16 职场文书
工作检讨书范文
2015/01/23 职场文书
小学德育工作总结2015
2015/05/12 职场文书
晚会主持人开场白台词
2015/05/28 职场文书
家长对学校的意见和建议
2015/06/03 职场文书
《纸船和风筝》教学反思
2016/02/18 职场文书
html5中sharedWorker实现多页面通信的示例代码
2021/05/07 Javascript
js Proxy的原理详解
2021/05/25 Javascript
python数据可视化使用pyfinance分析证券收益示例详解
2021/11/20 Python