您如何将auth添加到eve_swagger提供的路由?

问题描述 投票:0回答:1

我在项目中使用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
1个回答
0
投票

我找到了一种方法,但是不确定这是否是最佳/正确的方法。

我采用提供的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路由时,将在请求之前调用并处理我的授权函数。这样,如果我的职能部门决定该请求未被授权,则可以停止该请求。

© www.soinside.com 2019 - 2024. All rights reserved.