2016-08-18 69 views
0

我嘗試通過fitbit api訪問我的數據,Authorization部分工作得很好,我可以在我的用戶設置中看到我的應用程序,我有一個全新的access_token。但我無法獲得任何數據總是收到400錯誤。Fitbit api with PHP Curl

這裏我的PHP代碼

 $url = "https://api.fitbit.com/1/user/-/profile.json"; 

     $auth_header = array("Authorization: Bearer " . $_SESSION['access_token']); 

     $curl = curl_init($url); 
     curl_setopt($curl, CURLOPT_HEADER, true); 
     curl_setopt($curl, CURLOPT_POST, true);    
     curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); 
     curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); 
     curl_setopt($curl, CURLOPT_HTTPHEADER, $auth_header); 

     $result = curl_exec($curl); 
     curl_close($curl); 

     $results = json_decode($result, true); 

$結果總是

HTTP/1.1 400 Bad Request 
Server: cloudflare-nginx 
Date: Tue, 16 Aug 2016 14:56:45 GMT 
Content-Type: text/html 
Content-Length: 579 
Connection: close 

即使我刪除頁眉怪異的事情,我總是得到400錯誤沒有任何錯誤形成fitbit服務器。

不知道爲什麼????

感謝

回答

0

這是工作的代碼與我的項目

$oauth_profile_header = ["Authorization: Bearer " . $_SESSION['access_token']];     
$url = "https://api.fitbit.com/1/user/-/profile.json"; 

$cu = curl_init($url); 
curl_setopt($cu, CURLOPT_HTTPHEADER, $oauth_profile_header); 
curl_setopt($cu, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($cu, CURLOPT_SSL_VERIFYPEER, false); 
$result = curl_exec($cu); 
curl_close($cu); 
print_r($result); 
+0

非常感謝您的回答,但我不能再測試一下,現在的代碼停止工作的第一部分,每個I通話時間fitbit獲取代碼,它只返回這個#_ = _。我在我的帳戶中看到我的請求,如果我撤銷它,我會看到fitbit頁面接受請求,然後單擊「接受」,然後我以#_ = _結尾返回到我的網站。它在工作之前,非常難過。 – lebill