我有一个问题,当我单击刷新过期的 Oauth 不记名令牌时,它在邮递员后台传递的标头是什么?我需要将其复制到 Python 请求函数
此功能对于 Xero 不起作用
import requests
token_endpoint = "https://identity.xero.com/connect/token"
client_id = "YourClientID"
refresh_token = "YourRefreshToken"
payload = {
"grant_type": "refresh_token",
"client_id": client_id,
"refresh_token": refresh_token
}
response = requests.post(token_endpoint, data=payload)
if response.status_code == 200:
token_data = response.json()
new_access_token = token_data.get("access_token")
new_refresh_token = token_data.get("refresh_token")
print("Access token refreshed successfully:", new_access_token)
print("New refresh token:", new_refresh_token)
else:
print("Failed to refresh access token. Status code:",response.status_code)`
有人可以帮忙吗?
它返回 400 Bad Request, 我需要状态 200,文档链接:https://developer.xero.com/documentation/guides/oauth2/pkce-flow/#refreshing-access-and-refresh-tokens
标头应为 application/x-www-form-urlencoded:
的 Content-Typeurl = 'https://identity.xero.com/connect/token'
headers={
'Content-Type': 'application/x-www-form-urlencoded'
}
payload={
'grant_type': 'refresh_token',
'client_id' : client_id,
'refresh_token' : refresh_token
}
r = requests.post(url,headers=headers,json=payload)