2013-06-10 4 views
0

После нескольких часов попыток я не могу заставить его работать. Я уже пробовал другие методы, но они, похоже, тоже не работали. В конце концов я перешел на cURL, потому что им нужен объект с кодировкой URL. Не работает так, как ожидалось.OAuth2 - Запросить токен доступа - cURL

Мне нужно сделать запрос на получение токена доступа.

POST https://api.twitch.tv/kraken/oauth2/token 

Post Body (URL-кодировка):

client_id=[your client ID] 
&client_secret=[your client secret] 
&grant_type=authorization_code 
&redirect_uri=[your registered redirect URI] 
&code=[code received from redirect URI] 

Моего код до сих пор:

<?php 

// cURL resource 
$curl = curl_init(); 

// call code 
$usercode = $_GET['code']; 

// Set some options - passing in a useragent too here 
curl_setopt_array($curl, array(
    CURLOPT_RETURNTRANSFER => 1, 
    CURLOPT_URL => 'https://api.twitch.tv/kraken/oauth2/token', 
    CURLOPT_POST => 1, 
    CURLOPT_POSTFIELDS => array(
     usercode => $usercode, 
     body => 'client_id=91th8b4i2ouxdfn660xojhu1eqfaonu&client_secret=dqhzi4h2k2rnb67bzbno9kva43uwmf9&grant_type=authorization_code&redirect_uri=http://decimo.net/token.php&code=', $usercode 
    ) 
)); 
// Send request and save response to $response 
$response = curl_exec($curl); 
// Close request to clear up some resources 
curl_close($curl); 
?> 

Надеется, что вы можете объяснить то, что я сделал не так, чтобы учиться. Заранее благодарим за помощь.

+0

Какой ответ вы получаете? Кроме того, вы можете удалить пустые 'client_id' и' client_secret'. – Koterpillar

ответ

0

Согласно https://github.com/justintv/Twitch-API/blob/master/RESTful-Integration-Guide.md,

«Мы не предлагаем гранты пароля для подавляющего большинства случаев. Вы должны явно получить разрешение от подергивания использовать поток пароля удостоверения. Он потерпит неудачу с ошибками без нашего явного разрешения «.

Вам необходимо использовать API JavaScript вместо RESTful API.

Смежные вопросы