Извлечение данных из JSON php curl: json_decode не работает - PullRequest
0 голосов
/ 18 октября 2018

У меня есть следующий код:

<?php 

$consumerKey = '';
$consumerSecret = '';
$url = '';

$data = array(
'grant_type'  => 'password',
    'username'    => '',
    'password'    => ''
);


$curl = curl_init($url);
curl_setopt($curl, CURLOPT_HTTPHEADER, array('Accept: application/json','Accept-Language: en_US'));
curl_setopt($curl, CURLOPT_USERPWD, $consumerKey.':'.$consumerSecret);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($data));
    $result = curl_exec($curl);
    $status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
    $result = json_decode($result);
    curl_close($curl);
?>

Возвращает пример после результата json, но не токен доступа, несмотря на код json_decode.curl_setopt ($ curl, CURLOPT_RETURNTRANSFER, 1);не возвращает токен ниже.Спасибо за помощь мне.

{"access_token":"ffdd8dfb-2013-32ee-bc3e-dc5689d6c8fb","refresh_token":"7bf1ddad-d696-3d83-a524-37dac002164a","scope":"default","token_type":"Bearer","expires_in":3600}

1 Ответ

0 голосов
/ 19 октября 2018

Опираясь на ваши ответы - @Andreas и @YvesLeBorg, я переделал код и получил то, что хочу.Я ставлю это, чтобы помочь кому-то еще.Спасибо.

<?php 

$consumerKey = '';
$consumerSecret = '';
$url = '';
$curl = curl_init($url);
$data = array(
    'grant_type'  => 'password',
    'username'    => '',
    'password'    => ''
);
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_HTTPHEADER, array('Accept: application/json','Accept-Language: en_US'));
curl_setopt($curl, CURLOPT_USERPWD, $consumerKey.':'.$consumerSecret);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($data));
curl_setopt($curl,CURLOPT_RETURNTRANSFER,TRUE);
    $result = curl_exec($curl);
    $status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
    $result = json_decode($result);
    $access_token = $result->access_token;
echo $access_token;
    curl_close($curl);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...