2016-08-18 72 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