利用swagger模块开发flask的api接口帮助文档

2021-09-05 08:11

阅读:907

标签:flask-swagger   swagger   swagger官网称其为世界最流行的api工具。用过的都说好。我已经深有体会。附上官网编辑页面。只需要拷贝相应的文件就可以实现效果swagger在线编辑器下面主要讲解一下在python的flask框架下,如何使用这款屌炸天的应用。1、安装flasgger 项目地址https://github.com/rochacbruno/flasggerpip install flasgger2、写一个简单的web例子。以下是简写代码#coding:utf8 import sys reload(sys) sys.setdefaultencoding(‘utf8‘) from flask import Flask,Blueprint,render_template,request,redirect,jsonify from flasgger import Swagger,swag_from app = Flask(__name__) swagger = Swagger(app) #swagger展现api接口方法集合,访问http://127.0.0.1:9001/apidocs/即可 @app.route(‘/api/publish/k8sbuildjob/‘,methods=[‘POST‘]) @swag_from(‘apiDescYmal/color.yml‘) def build():     return jsonify({}) if __name__ == ‘__main__‘:     app.run(host=‘0.0.0.0‘,port=9001,debug=True)3、描述文件。示例color.yml发布镜像编译任务接口 指定的color.yml文件 --- schemes:   - http parameters:   - name: appid     in: body     description: 指定需要编译镜像的appid     type: integer     enum: [‘111‘, ‘222‘,]     required: true     default: all   - name: dbenv     in: body     description: 指定数据库db环境     type: string     enum: [‘formal‘, ‘test‘]     required: true     default: all   - name: dbname     in: body     description: 指定数据库db     type: string     enum: [‘kubernetes‘, ‘cdsmdb‘]     required: true     default: all   - name: releaseenv     in: body     description: 发布环境     type: string     enum: [‘test‘, ‘pro‘]     required: true     default: all definitions:   Palette:     type: object     properties:       palette_name:         type: array         items:           $ref: ‘#/definitions/k8sbuildjob‘   Color:     type: string responses:   200:     description: 返回的是一个元组,第一位是状态码0成功,1失败,第二个是成功或失败的信息     schema:       $ref: ‘#/definitions/k8sbuildjob‘     examples:       data: (0, "send rabbitmq k8s job success")4、运行程序python k8sdashboard.py访问api帮助接口:默认接口是:http://172.31.29.123:9001/apidocs/#/default 更多信息,访问官网自研究本文出自 “在奔跑的人” 博客,请务必保留此出处http://leizhu.blog.51cto.com/3758740/1961946利用swagger模块开发flask的api接口帮助文档标签:flask-swagger   swagger   原文地址:http://leizhu.blog.51cto.com/3758740/1961946


评论


亲,登录后才可以留言!