当前位置: 首页 > 面试题库 >

Python请求库如何通过单个令牌传递Authorization标头

周飞
2023-03-14
问题内容

我有一个请求URI和一个令牌。如果我使用:

curl -s "<MY_URI>" -H "Authorization: TOK:<MY_TOKEN>"

等等,我得到200并查看相应的JSON数据。因此,我安装了请求,并且当我尝试访问该资源时,我得到了403,这可能是因为我不知道传递该令牌的正确语法。谁能帮我解决这个问题?这就是我所拥有的:

import sys,socket
import requests

r = requests.get('<MY_URI>','<MY_TOKEN>')
r. status_code

我已经尝试过:

r = requests.get('<MY_URI>',auth=('<MY_TOKEN>'))
r = requests.get('<MY_URI>',auth=('TOK','<MY_TOKEN>'))
r = requests.get('<MY_URI>',headers=('Authorization: TOK:<MY_TOKEN>'))

但是这些都不起作用。


问题答案:

在python中:

('<MY_TOKEN>')

相当于

'<MY_TOKEN>'

并要求翻译

('TOK', '<MY_TOKEN>')

当您希望请求使用基本身份验证并设计授权标头时,如下所示:

'VE9LOjxNWV9UT0tFTj4K'

这是base64的表示形式 'TOK:<MY_TOKEN>'

要传递自己的标头,您需要像这样传递字典:

r = requests.get('<MY_URI>', headers={'Authorization': 'TOK:<MY_TOKEN>'})


 类似资料:
  • 我有一个请求URI和一个令牌。如果我使用: 等等,我得到一个200并查看相应的JSON数据。所以,我安装了请求,当我试图访问这个资源时,我得到了一个403,可能是因为我不知道传递该令牌的正确语法。有人能帮我弄清楚吗?这就是我所拥有的: 我已经试过了: 但这些都不管用。

  • 问题内容: 如何通过python模块Requests传递csrftoken?这就是我所拥有的,但是它不起作用,并且我不确定将其传递给哪个参数(数据,标头,身份验证…) 每次都有相同的错误消息。 问题答案: 如果要设置引荐来源标头,则对于该特定站点,您需要将引引来源设置为与登录页面相同的URL: 当使用不安全时,标头通常会被过滤掉,否则无论如何很容易被欺骗,因此大多数站点不再需要设置标头。但是,在使

  • 问题内容: 我已经按照npm软件包文档中的建议编写了axios POST请求,例如: 它可以工作,但是现在我修改了后端API以接受标头。 内容类型:“ application / json” 授权:“ JWT fefege …” 现在,此请求在Postman上可以正常工作,但是在编写axios调用时,我遵循 此链接 ,无法完全正常工作。 我经常出错。 这是我的修改请求: 任何帮助是极大的赞赏。 问

  • 我使用springfox 2.9.2我有这样的api: 女巫来自身份验证服务器。我尝试在swagger中首次调用此服务器,并将其传递给像上面这样的控制器请求。所以我做 在Swagger ui上,授权调用成功返回了令牌,但它没有将令牌添加到请求头中。它会产生 如果我像这样设置令牌:

  • 问题内容: 我正在使用Scala Play!2.6框架,但这可能不是问题。我正在使用他们的Javascript路由- 似乎可以正常工作,但出现了问题。我有一个带有CSRF令牌的表单,在渲染时会产生这种情况: 这大概是我的AJAX: 但是,当我发布此消息时,我从服务器返回了未经授权的响应,并且IntelliJ中的控制台告诉我CSRF检查失败。如何在请求中传递CSRF令牌? 问题答案: 好的,经过几个

  • 我正在使用PyJWT库(导入jwt)库生成用于身份验证的JSON web令牌。 最初的设计让我们通过URL传入令牌,比如http://example.net?token=EYKDFKDFKDNDFK... 但是,使用此解决方案,似乎任何查看URL中的令牌的人都可以使用此令牌访问站点。