Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/355.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在python flask中传递头中生成的令牌_Python_Flask - Fatal编程技术网

如何在python flask中传递头中生成的令牌

如何在python flask中传递头中生成的令牌,python,flask,Python,Flask,我有一个登录API,它将生成一个令牌,我想将该令牌作为请求,我想调用另一个API,下面是我的python脚本,请您帮助我获取。 下面是使用post方法的登录请求。我正在硬编码凭据。成功登录后,我想使用这些凭据登录。它将生成一个令牌。使用该令牌,您希望调用另一个名为prospects的API import requests url = "http://website/login" payload="{\"username\": \"ab

我有一个登录API,它将生成一个令牌,我想将该令牌作为请求,我想调用另一个API,下面是我的python脚本,请您帮助我获取。 下面是使用post方法的登录请求。我正在硬编码凭据。成功登录后,我想使用这些凭据登录。它将生成一个令牌。使用该令牌,您希望调用另一个名为prospects的API

import requests

url = "http://website/login"
payload="{\"username\": \"abc@test.com\", \"password\": \"password\"}\r\n"
headers = {
  'Content-Type': 'application/json'
}
token1 = requests.request("POST", url, headers=headers, data=payload)
p1 = "http://website/prospect"
headers = {
  # 'Authorization': token1,
  'Content-Type': 'application/json'
}
api_call_response = requests.get(p1, headers={'Authorization': token1})
print(api_call_response.text)

在第一次post请求中,我能够在第二次调用中生成令牌。我想获取令牌并调用潜在客户。我无法调用另一个API。请您帮助我获取该请求。请求返回一个响应对象。您可以通过以下方式获取响应文本:

response = requests.request("POST", url, headers=headers, data=payload)
token1 = response.text
print(token1)
respons_object = response.json()
p1 = "http://website/prospect"
api_call_response = requests.get(p1, headers={'Authorization': respons_object['token']})
假设响应是这样的:

{"token": "f8DigrXubwYQj1KbUS0M9mOTNlHUKG"}
headers={'Authorization': 'Bearer {}'.format(respons_object['token'])}
然后您可以这样使用它:

response = requests.request("POST", url, headers=headers, data=payload)
token1 = response.text
print(token1)
respons_object = response.json()
p1 = "http://website/prospect"
api_call_response = requests.get(p1, headers={'Authorization': respons_object['token']})
在中,您可以找到好的提示和提示

除此之外,还有不同类型的代币。承载、JWT等。您可能需要将令牌类型添加到标头中。像这样:

{"token": "f8DigrXubwYQj1KbUS0M9mOTNlHUKG"}
headers={'Authorization': 'Bearer {}'.format(respons_object['token'])}

我在上面试过,上面写着KeyError:“token”这对我有用,谢谢你的帮助api_call_response=requests.get(p1,headers={'Authorization':f'Bearer{response_object[“token”]}),我会把它添加到我的答案中。很高兴看到你的问题解决了