[英]Dailymotion API get refresh token by request.post python
我想通過此代碼從Dailymotion API獲取刷新令牌
def get_refresh_token(code):
platform = Platform.objects.get(name='Dailymotion')
secret_key = platform.secret_key
api_key = platform.api_key
redirect_uri = platform.callback_url
params = {
'code' : code,
'client_id' : api_key,
'client_secret' : secret_key,
'grant_type':'authorization_code',
'redirect_uri':redirect_uri
}
r = requests.post('https://api.dailymotion.com/oauth/token',data=params)
print (r.json())
print(code)
print(r.data)
refresh_token = r.json().get('refresh_token')
return refresh_token
但它不起作用。 錯誤是: {'error_description': 'Invalid authorization code.', 'error': 'invalid_grant'}
。我嘗試使用相同的代碼,grant_type ...從Chrome擴展程序中發布,並且可以正常工作。 我對python代碼做錯了什么?
def get_refresh_token(self, code): args = { 'grant_type': 'refresh_token', 'refresh_token': code, 'client_id': DAILYMOTION_API_KEY, 'client_secret': DAILYMOTION_API_SECRET, } url = 'https://api.dailymotion.com/oauth/token' data = urllib.urlencode(args) request = urllib2.Request(url, data) response = urllib2.urlopen(request) html = response.read() obj_Response = literal_eval(html) return obj_Response
在獲取AccessToken時,我們獲得了一個參數“代碼”,在這里我們必須將該值替換為代碼。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.