Я работаю с API-интерфейсами YouTube для своего проекта в колледже и получаю сообщение об ошибке. Здесь я отправляю их на страницу авторизации для входа, когда они разрешают доступ, она отправляет обратно строку $ _GET ['code']. Затем я отправляю это вместе с некоторыми другими данными, и он должен отправить обратно объект JSON. Вместо этого я просто получаю
Предупреждение: file_get_contents (https://accounts.google.com/o/oauth2/token)
[function.file-get-contents]: не удалось открыть поток: HTTP-запрос
не удалось! Неверный запрос HTTP / 1.0 400 в http://www.example.net/callback.php в строке 27
Я заменил свой домен на example.net только для безопасности
urlencode($_GET['code']),
'client_id' => urlencode('111522767640.apps.googleusercontent.com '),
'client_secret' => urlencode('secret'),
'redirect_uri' => urlencode('http://example.net/callback.php'),
'grant_type' => urlencode('authorization_code')
)
);
$params =
array('http' =>
array(
'method' => 'POST /o/oauth2/token HTTP/1.1',
'header' => 'Host: accounts.google.com\r\n'.
'Content-Type: application/x-www-form-urlencoded',
'content' => $postdata
)
);
$context = stream_context_create($params);
$result = file_get_contents('https://accounts.google.com/o/oauth2/token', false,$context);
var_dump($_SESSION);
var_dump($result);
}
else //If code isnt set, user must have come here erroniously or has denied access to this program
{
//header( 'Location: www.example.net/error.php' ) ;
}
?>