Fitbit api与PHP Curl

时间:2016-08-18 15:03:31

标签: fitbit

我尝试通过fitbit api访问我的数据,授权部分工作得很好,我可以在我的用户设置中看到我的应用,我有一个全新的access_token。但是我无法从中获取任何数据总是会收到400错误。

这是我的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);

$ result总是

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服务器。

不知道为什么????

由于

1 个答案:

答案 0 :(得分: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);