python 将另一个函数的返回值设置为要在 header 中使用的变量
python set returned value from another function as a variable to use in header
尝试在 submit_documents() 函数的请求中将令牌作为 auth header 中的变量,如果它是硬编码的,它工作正常;但是我需要从 log_in_as_taxpayer() 函数中获取 return :
import json
class ETax_Integration(object):
"""docstring for ETax_Integration"""
def __init__(self, arg):
super(ETax_Integration, self).__init__()
self.arg = arg
def log_in_as_taxpayer(self):
client_id='###'
# print(client_id)
url = "https://url/connect/token"
client_secret='###'
# print(client_secret)
payload={'grant_type':'client_credentials','client_id':{client_id},'client_secret':{client_secret},'scope':'InvoicingAPI'}
headers = {
'Content-Type':'application/x-www-form-urlencoded'
}
response = requests.request("POST", url, headers=headers, data=payload, verify=False)
values=json.loads(response.text)
# print(values['access_token'])
# print( response.raise_for_status())
return (values['access_token'])
def submit_document(self):
token=self.log_in_as_taxpayer()
print(token)
submit_payload = json.dumps({
"documents": []
headers = {
'Content-Type': 'application/json',
'Authorization': 'Bearer {token}'
}
submit_url = "https://api/link"
response = requests.request("POST", submit_url, headers=headers, data=submit_payload,verify=False)
print(response.text)
print( response.raise_for_status())
test=ETax_Integration(object)
# test.log_in_as_taxpayer()
test.submit_document()
尝试在 submit_documents() 函数的请求中将令牌作为 auth header 中的变量,如果它是硬编码的,它工作正常;但是我需要从 log_in_as_taxpayer() 函数中获取 return :
import json
class ETax_Integration(object):
"""docstring for ETax_Integration"""
def __init__(self, arg):
super(ETax_Integration, self).__init__()
self.arg = arg
def log_in_as_taxpayer(self):
client_id='###'
# print(client_id)
url = "https://url/connect/token"
client_secret='###'
# print(client_secret)
payload={'grant_type':'client_credentials','client_id':{client_id},'client_secret':{client_secret},'scope':'InvoicingAPI'}
headers = {
'Content-Type':'application/x-www-form-urlencoded'
}
response = requests.request("POST", url, headers=headers, data=payload, verify=False)
values=json.loads(response.text)
# print(values['access_token'])
# print( response.raise_for_status())
return (values['access_token'])
def submit_document(self):
token=self.log_in_as_taxpayer()
print(token)
submit_payload = json.dumps({
"documents": []
headers = {
'Content-Type': 'application/json',
'Authorization': 'Bearer {token}'
}
submit_url = "https://api/link"
response = requests.request("POST", submit_url, headers=headers, data=submit_payload,verify=False)
print(response.text)
print( response.raise_for_status())
test=ETax_Integration(object)
# test.log_in_as_taxpayer()
test.submit_document()