【问题标题】:How to use jwt authorization with python's library requests?如何在 python 的库请求中使用 jwt 授权?
【发布时间】:2021-11-21 11:14:49
【问题描述】:

我正在开发一个使用 flask_jwt_extended 库作为授权扩展的 Flask RESTFULL API。

现在,我有两个用于注册用户和登录的常用资源,效果很好。使用登录资源,用户可以提供他们的电子邮件和密码并取回令牌。在 Postman 中,此令牌使用 Bearer Token 模式按预期工作。

但是,我需要直接从 Python3 终端发出一些请求。到目前为止,我在请求中使用了简单的名称-密码身份验证,因此请求示例如下:

import requests as rs

rs.get('http://localhost:5000/api/samples', auth = ('user', 'pass'))

现在,使用 jwt 令牌,我正在尝试以下操作:

import requests as rs

# xxxxxx is a really long string got previously with login resource

rs.get('http://localhost:5000/api/samples', auth = ("xxxxxx"))

但是这种方法给了我:

TypeError: 'str' object is not callable

在其他帖子中,我检查过这种类型的授权是通过标头进行的,所以我也尝试过:

import requests as rs

# xxxxxx is a really long string got previously with login resource

rs.get('http://localhost:5000/api/samples', headers = {'Authorization': 'access_token xxxxxx'})

这里的错误是立即 401 http 响应。

希望有人可以帮助我!

提前谢谢你!

【问题讨论】:

    标签: python-3.x python-requests flask-jwt-extended


    【解决方案1】:

    如果有人来这里寻找答案:您只需要添加一个标题,如下所示

    headers = {'Authorization': 'Bearer {token}'}
    

    来源:https://reqbin.com/req/python/5k564bhv/get-request-bearer-token-authorization-header-example

    【讨论】:

    • 虽然此链接可能会回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接答案可能会失效。 - From Review
    猜你喜欢
    • 2020-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-29
    • 2017-12-17
    • 2021-12-04
    • 2021-09-25
    • 2015-06-28
    相关资源
    最近更新 更多