• Flask 学习46.FlaskRESTX 生成 Swagger 文档入门教程 上海


    前言

    Swagger API 文档是自动生成的,可从您的 API 的根 URL 获取。@api.doc()您可以使用装饰器配置文档。

    Swagger UI 文档

    默认flask-restx提供 Swagger UI 文档,从 API 的根 URL 提供

    from flask import Flask
    from flask_restx import Api, Resource, fields
    
    app = Flask(__name__)
    api = Api(app, version='1.0', title='Sample API',
        description='A sample API',
    )
    
    @api.route('/my-resource/<id>')
    @api.doc(params={'id': 'An ID'})
    class MyResource(Resource):
        def get(self, id):
            return {}
    
        @api.response(403, 'Not Authorized')
        def post(self, id):
            api.abort(403)
    
    
    if __name__ == '__main__':
        app.run(debug=True)
    

    运行上面的代码并访问 API 的根 URL ( http://localhost:5000 ),您可以查看自动生成的 Swagger UI 文档。

    点开详情可以看到参数的描述

    doc 文档路径

    您可以使用参数控制 Swagger UI 路径doc(默认为 API 根目录):

    from flask import Flask
    from flask_restx import Api, Resource, fields
    
    app = Flask(__name__)
    api = Api(app,
              version='1.0',
              title='Sample API',
              description='A sample API',
              doc='/doc'      # swagger 文档访问地址
    )
    

    那么Swagger UI访问地址是http://127.0.0.1:5000/doc

    禁用文档

    要完全禁用 Swagger UI,请设置doc=False:

    from flask import Flask
    from flask_restx import Api
    
    app = Flask(__name__)
    api = Api(app, doc=False)
    
  • 相关阅读:
    TYVJ1061 Mobile Service
    TYVJ1061 Mobile Service
    KMP 模板
    poj 3254 Corn Field
    poj 3254 Corn Field
    洛谷1279 字串距离
    poj 1041 John's trip——欧拉回路字典序输出
    bzoj 3033 太鼓达人——欧拉图搜索
    bzoj 2503 相框——思路
    bzoj 2935 [Poi1999]原始生物——欧拉回路思路!
  • 原文地址:https://www.cnblogs.com/yoyoketang/p/16656220.html
Copyright © 2020-2023  润新知