只是我的问题。
是否有作为 Flask 蓝图实现的连接示例。
通过 connexion 使用现有的服务器应用程序来服务器 api 也可能很有趣。
谢谢
您可以实例化一个Api 对象并使用Api.blueprint
将 API 蓝图添加到 Flask。 至少对于简单的应用程序,您还可以像使用 Flask App 对象一样使用 connexion 中的 App 对象。
谢谢@jmcs Joao。 对 Api.object 不太了解。 我会努力做到的。
关闭问题。
再次感谢
我正在使用蓝图管理我所有不同的端点(使用不同的烧瓶扩展),所以这非常有帮助。
就该声明而言:
您还可以像使用 Flask App 对象一样使用 connexion 中的 App 对象
请确保为此使用connexion.App().app
。 connexion.App()
不是flask.Flask
的实例,但connexion.App().app
是。
旁注:也很高兴在文档中看到有关此内容的内容。
"""Implement load api from swagger using template import yam."""
import yaml
import connexion
from jinja2 import FileSystemLoader
from jinja2.environment import Environment
def connexion_register_blueprint(app, swagger_file, **kwargs):
con = connexion.FlaskApp("api", app.instance_path)
env = Environment(loader=FileSystemLoader(
app.config.get('SWAGGER_ROOT_TEMPLATE') or
app.config['PROJECT_ROOT']
))
swagger_string = env.get_template(swagger_file).render(**kwargs)
specification = yaml.safe_load(swagger_string)
api = super(connexion.FlaskApp, con).add_api(specification, **kwargs)
app.register_blueprint(api.blueprint)
return api
...
connexion_register_blueprint(app, 'api/v1/swagger/main.yaml')
...
最有用的评论
我正在使用蓝图管理我所有不同的端点(使用不同的烧瓶扩展),所以这非常有帮助。
就该声明而言:
请确保为此使用
connexion.App().app
。connexion.App()
不是flask.Flask
的实例,但connexion.App().app
是。旁注:也很高兴在文档中看到有关此内容的内容。