Skip to content

Latest commit

 

History

History
83 lines (57 loc) · 2.2 KB

README.md

File metadata and controls

83 lines (57 loc) · 2.2 KB

swagger-ui-py

Swagger UI for Python web framework, such Tornado, Flask, Quart, aiohttp and Sanic.

Only support Python3.

Usage

  • Install

    pip3 install swagger-ui-py
  • Code

    Using the local config file

    from swagger_ui import api_doc
    api_doc(app, config_path='./config/test.yaml', url_prefix='/api/doc', title='API doc')

    Using config url, but need to suport CORS

    api_doc(app, config_url='https://petstore.swagger.io/v2/swagger.json', url_prefix='/api/doc', title='API doc')

    And suport config file editor

    api_doc(app, config_path='./config/test.yaml', editor=True)

    And keep the old way

    # for Tornado
    from swagger_ui import tornado_api_doc
    tornado_api_doc(app, config_path='./conf/test.yaml', url_prefix='/api/doc', title='API doc')
    
    # for Sanic
    from swagger_ui import sanic_api_doc
    sanic_api_doc(app, config_path='./conf/test.yaml', url_prefix='/api/doc', title='API doc')
    
    # for Flask
    from swagger_ui import flask_api_doc
    flask_api_doc(app, config_path='./conf/test.yaml', url_prefix='/api/doc', title='API doc')
    
    # for Quart
    from swagger_ui import quart_api_doc
    quart_api_doc(app, config_path='./conf/test.yaml', url_prefix='/api/doc', title='API doc')
    
    # for aiohttp
    from swagger_ui import aiohttp_api_doc
    aiohttp_api_doc(app, config_path='./conf/test.yaml', url_prefix='/api/doc', title='API doc')
  • Edit Swagger config file (JSON or YAML)

    Please see https://swagger.io/resources/open-api/.

  • Access

    Open http://<host>:<port>/api/doc/editor, you can edit api doc config file.

    Open http://<host>:<port>/api/doc view api doc.

Swagger UI

Swagger UI version is 3.23.11. see https://github.com/swagger-api/swagger-ui.

Swagger Editor

Swagger Editor version is 3.6.36. see https://github.com/swagger-api/swagger-editor.

Update

You can update swagger ui and swagger editor version with

cd swagger-ui-py/tools
python update.py ui
# or
python update.py editor