Flask Restplus API的Swagger UI中的错误401

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

我正在使用flask_restplusflask_httpauth构建一个API,用于基于令牌的身份验证。除了一件事,一切都很好。在Swagger UI中,当我尝试执行搜索查询时,我收到错误401。在授权中添加“Bearer”无济于事。请参阅下面的屏幕截图。

有趣的是,复制和粘贴curl(在Swagger UI中)的输出并从终端运行它确实返回正确的输出。与Postman中运行相同。问题可能在Swagger UI中。有什么建议?

遗憾的是,关于Github的建议对我不起作用。

注意:似乎verify_token(token)没有收到来自Swagger UI的输入。当我尝试打印token时,从Swagger调用时它是空的,但是当从curl / Postman调用时显示该值。

部分代码:

authorizations = {
    'Bearer Auth': {
        'type': 'apiKey',
        'in': 'header',
        'name': 'Authorization'
    },
}

api = Api(blueprint, version='1.0', title='Flask API',
          description='My API', security='Bearer Auth', authorizations=authorizations)

@token_auth.verify_token
def verify_token(token):
    g.current_user = User.check_token(token) if token else None
    return g.current_user is not None

Screenshot Swagger UI

python swagger-ui flask-restplus
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.