1
因此,我嘗試創建與YouTube API的oauth連接,但我有解碼響應的問題。我的問題是在這裏:json_decode返回null當我嘗試解碼來自YouTube的api的響應
public function getCallbackUrl($code)
{
// Grab the returned code and extract the access token.
$this->params = [
'code' => $code,
'client_id' => '#####',
'client_secret' => '####',
'redirect_uri' => '######',
'grant_type' => 'authorization_code'
];
// Get access token
$command = 'curl --data "' . http_build_query($this->params) . '" https://accounts.google.com/o/oauth2/token';
exec($command, $resultToken);
$resultToken = json_decode($resultToken[0]);
我做高管$resultToken
回報這樣的後:
array(5) { [0]=> string(1) "{" [1]=> string(93) " "access_token" : "###########"," [2]=> string(26) " "token_type" : "Bearer"," [3]=> string(21) " "expires_in" : 3599" [4]=> string(1) "}" }
但是當我嘗試json_decode獲得一個數組:$resultToken = json_decode($resultToken[0]);
我得到的結果NULL
任何人都可以向我解釋爲什麼請說吧?歡迎任何幫助,謝謝你的時間!
var_dump($resultToken[0]) = NULL;
var_dump($ resultToken [0])是什麼? –
是的,向我們展示響應主體。 –
'$ resultToken [0]'是無效的JSON。檢查你的迴應。另外考慮使用[PHP cURL擴展名](https://php.net/curl),而不是直接使用系統調用。 – Elias