python - 我如何在浏览器中传递 authtoken 获取请求

标签 python flask

我如何提出以下请求

$ curl -u eyJhbGciOiJIUzI1NiIsImV4cCI6MTM4NTY2OTY1NSwiaWF0IjoxMzg1NjY5MDU1fQ.eyJpZCI6MX0.XbOEFJkhjHJ5uRINh2JA1BPzXjSohKYDRT472wGOvjc:unused -i -X GET http://127.0.0.1:5000/api/resource
HTTP/1.0 200 OK
Content-Type: application/json

处理我的 python-get 请求,而不必使用我的登录信息,而只需使用我的身份验证 token ,就像我如何让它在curl 上工作一样?

我尝试了以下代码,它抛出了我未经授权的访问

response = requests.get('http://127.0.0.1:5000/api/resource', headers={'Authorization':'eyJhbGciOiJIUzI1NiIsImV4cCI6MTQ3Nzc3MTE2MiwiaWF0IjoxNDc3NzcwNTYyfQ.eyJpZCI6MX0.3IbZmxhDXxymOzXBKnv-rbMDBV_nFYaf-IWIW5YBnWE:unused'})
print response.text

最佳答案

在curl 联机帮助页中:

-u, --user <user:password>
    Specify the user name and password to use for server authentication.

在请求文档中requests documentation :

from requests.auth import HTTPBasicAuth
requests.get('https://api.github.com/user', auth=HTTPBasicAuth('user', 'pass'))

所以以下可能有效(未经测试):

from requests.auth import HTTPBasicAuth
response = requests.get('http://127.0.0.1:5000/api/resource', auth=HTTPBasicAuth('eyJhbGciOiJIUzI1NiIsImV4cCI6MTQ3Nzc3MTE2MiwiaWF0IjoxNDc3NzcwNTYyfQ.eyJpZCI6MX0.3IbZmxhDXxymOzXBKnv-rbMDBV_nFYaf-IWIW5YBnWE','unused')
print response.text

关于python - 我如何在浏览器中传递 authtoken 获取请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40322834/

相关文章:

python - 如何选择列标题中的 nan

python - Flask URL 路由

具有非 UTF-8 输出的 Python 的 subprocess.getoutput

python - 动态定义函数的(关键字)参数?

python - 如何使用 Flask CORS 将域列入白名单

python - 在 mod_wsgi 中运行的 flask 无法写入/tmp

python - 如何使用 Flask-login 进行工作日志记录?

python - Flask SQLAlchemy 关系

python - 机器人区域映射 Python

python - cron 作业执行的脚本中的相对路径