Falcon的Swagger UI应用程序
falcon-swagger-ui的Python项目详细描述
简单的Falcon应用程序,用于向Falcon添加Swagger UI 申请
包含的Swagger UI版本:v3.10.0
安装
pip install falcon-swagger-ui
用法
示例应用程序:
importfalconfromfalcon_swagger_uiimportregister_swaggerui_appapp=falcon.API()SWAGGERUI_URL='/swagger'# without trailing slashSCHEMA_URL='http://petstore.swagger.io/v2/swagger.json'### For developer environment you can expose a static endpoint like:# import pathlib## SCHEMA_URL = '/static/v1/swagger.json'# STATIC_PATH = pathlib.Path(__file__).parent / 'static'## @see: http://falcon.readthedocs.io/en/stable/api/api.html#falcon.API.add_static_route# app.add_static_route('/static', str(STATIC_PATH))#page_title='Falcon Swagger Doc'favicon_url='https://falconframework.org/favicon-32x32.png'register_swaggerui_app(app,SWAGGERUI_URL,SCHEMA_URL,page_title=page_title,favicon_url=favicon_url,config={'supportedSubmitMethods':['get'],})
运行示例应用程序:
pip install falcon gunicorn jinja2 gunicorn example:app
配置
应用程序支持重载所有的swagger ui配置 可以序列化JSON的选项见 https://github.com/swagger-api/swagger-ui#parameters用于选项。
另外,一些oauth字段暴露于特殊变量 将被呈现到相关函数中。
下面列出了应用程序默认值(应与swaggerui默认值匹配)。
{# OAuth related'app_name':'null','client_realm':'null','client_id':'null','client_secret':'null',# SwaggerUI base configuration, see https://github.com/swagger-api/swagger-ui#parameters'docExpansion':"none",'jsonEditor':False,'defaultModelRendering':'schema','showRequestHeaders':False,'supportedSubmitMethods':['get','post','put','delete','patch']}