我在项目中使用eve_swagger(https://github.com/pyeve/eve-swagger),它非常适合生成swagger文档。我有一个用例,其中我需要具有默认的/api-docs
端点,该端点是作为库中的路由创建的,需要身份验证。
[创建前夕应用程序时,我将auth
参数设置为我的auth类,但是/ api-docs端点是使用蓝图创建的,我不确定如何将auth添加到该端点。有什么想法吗?
我的前夕*部门:
eve = "~0.7"
eve_sqlalchemy = "~0.7"
eve_swagger = "^0.0.11"
谢谢!
我找到了一种方法,但是不确定这是否是最佳/正确的方法。
我采用提供的eve_swagger蓝图,并添加带有授权功能的before_request。像这样的东西:
import eve_swagger
from flask import current_app as app
def authorize_swagger:
# my auth logic
eve_swagger.swagger.before_request(authorize_swagger)
app.register_blueprint(eve_swagger.swagger)
这样做的结果是,当我调用默认的/api-docs
路由时,将在请求之前调用并处理我的授权函数。这样,如果我的职能部门决定该请求未被授权,则可以停止该请求。