400 BAD REQUEST при использовании Nest API для авторизации

В настоящее время я пытаюсь использовать Nest API, но не могу пройти часть авторизации.
Вот код PHP, который я использую для вызова API:

//access token url used for authorization
$url="https://api.home.nest.com/oauth2/access_token?code=".$_GET['pin']."&client_id=".$api_key."&client_secret=".$secret_key."&grant_type=authorization_code";
$ch = curl_init ($url);

curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true);

//https
curl_setopt($ch, CURLOPT_SSLVERSION,1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

curl_setopt($ch, CURLOPT_POST,true);

//to have headers in response
curl_setopt($ch, CURLOPT_HEADER, 1);

$result = curl_exec ($ch);
if($result){
echo "Result : " .$result;
}else{
echo curl_error($ch);
}

И я получаю следующий результат для этого вызова:

Result : HTTP/1.1 200 Connection established HTTP/1.1 400 BAD_REQUEST Content-Length: 0 Connection: Close

Есть ли другие параметры, которые мне нужно установить, чтобы заставить его работать?

РЕДАКТИРОВАТЬ: сгенерированный URL ($ url) отлично работает с HTTPRequester (аддон Firefox), поэтому проблема, скорее всего, исходит из самого запроса curl

Заранее спасибо.

0

Решение

HTTP коды состояния

  • 400 — неверный запрос — обычно это происходит, когда неверный параметр
    дано методу

Итак, попробуйте это:

echo $url;
exit;

до:

$ch = curl_init ($url);

и скопируйте этот URL в адресную строку браузера. Посмотрите, где вы публикуете неправильный параметр.

Видите, если это поможет.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]