我尝试通过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服务器。
不知道为什么????
由于
答案 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);