-1

urllib2 を使用した既存の HTTP POST があります。

data = 'client_id=%s&client_secret=%s&grant_type=authorization_code&code=%s&redirect_uri=%s' % (settings.GOOGLE_CLIENT_ID, settings.GOOGLE_CLIENT_SECRET, code, redirect_uri)

req = urllib2.Request(access_token_url, data=data)
response = urllib2.urlopen(req)
response_content = response.read()

json_response = json.loads(response_content)

代わりにこれを Requests ライブラリ ( http://docs.python-requests.org/ )に変換しようとしていますが、400 Invalid Request が発生しています。

これが私の試みです:

params = {'redirect_uri' : redirect_uri}
params['client_id'] = settings.GOOGLE_CLIENT_ID
params['client_secret'] =  settings.GOOGLE_CLIENT_SECRET
params['grant_type'] = 'authorization_code'
params['code'] = code

req = requests.post(access_token_url, data=params)
json_response = req.json()

data の代わりに params を使用するように調整しようとしましたが、同じエラーが発生しました。

不足しているものはありますか?

4

1 に答える 1