为什么我收到405错误的请求?

时间:2020-05-29 00:59:28

标签: python post oauth-2.0 request

我正在尝试使用python3.6向oauth2服务器发送发布请求以获取我的访问令牌,它显示响应405。有人可以在这里告诉我我做错了吗

import requests
client_id = 'client_id'
client_secret = 'my client secret'
r = request.post('serverurl/oauth2/token&Content-Type="application/x-www-form-urlencoded"',data = {'grant_type':'authorization_code',
'code':'91a8a5e4-c5b3-4e2a-91ca-d59fe139526c',
'client_id':client_id,
'client_secret':client_secret,
'redirect_uri':'actualredirecturl'
}

1 个答案:

答案 0 :(得分:0)

我使用以下代码解决了

这是代码

import requests,base64
client_id = "myclientid"
client_secret = "myclientsecret"
redirect_uri = 'my redirect url'
code = 'code return by server on login'
requestHeaders = {
    'Authorization': 'Basic ' + base64.b64encode(client_id + ':' + client_secret),
    'Content-Type': 'application/x-www-form-urlencoded'
}
requestBody = {
    'grant_type': 'authorization_code',
    'code': code,
    'redirect_uri': redirect_uri
}
response = requests.post('token_url', data=requestBody, headers=requestHeaders)
token = response.json()['access_token']

希望有帮助

相关问题