如何将auth添加到eve_swager提供的路由中

  • 本文关键字:swager 路由 eve auth 添加 eve
  • 更新时间 :
  • 英文 :


我正在使用eve_swager(https://github.com/pyeve/eve-swagger)在一个项目中,它非常适合生成swagger文档。我有一个用例,其中我需要将默认的/api-docs端点创建为库中的路由,该端点需要身份验证。

当我创建eve应用程序时,我将auth参数设置为我的auth类,但/api docs端点是用蓝图创建的,我不确定如何向该端点添加auth。有什么想法吗?

我的eve*deps:

eve = "~0.7"
eve_sqlalchemy = "~0.7"
eve_swagger = "^0.0.11"

谢谢!

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

我采用了提供的eve_swager蓝图,并添加了一个带有授权函数的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路由时,我的授权函数会在请求之前被调用和处理。这样,如果我的函数决定请求未被授权,它可以停止请求。

最新更新