對不起,這個答案未來兩年晚,但也許這將是有幫助的人。
一旦您知道了用戶的令牌&令牌密鑰,您可以使用以下OAUTH POST請求來訂閱其供稿。此網址適用於他們的活動Feed。
<?php
$consumerKey = "lajsdf23l4l8asdfn238ladf8xjk92oi"; //From Fitbit's website when you sign up for an app
$consumerSecret = "l8adl3halsdf82p9adfads2gjadsf"; //From Fitbit's website when you sign up for an app
$oauth = new OAuth($consumerKey,$consumerSecret,OAUTH_SIG_METHOD_HMACSHA1,OAUTH_AUTH_TYPE_AUTHORIZATION);
$usersToken = "k28a9wifvnc89w2o8oigaad8e23r23jf";
$usersSecret = "234o8fdofsy8df89aydfoyo84e2902af";
$oauth->setToken($usersToken,$usersSecret);
$subscriptionURL = "https://api.fitbit.com/1/user/-/activities/apiSubscriptions.json";
try{
//Send a POST to subscribe as stated on https://wiki.fitbit.com/display/API/Fitbit+Subscriptions+API
$oauth->fetch($subscriptionURL, null, OAUTH_HTTP_METHOD_POST);
print_r(json_decode($oauth->getLastResponse())); // Make sure the request was successful
}
catch(Exception $e){
echo 'ERROR:';
print_r($e);
print_r($oauth->getRequestHeader('POST', $url));
}
你的用戶URL端點應該是你有一些代碼,可以接收Fitbit數據,做任何你需要用它做的網頁。下面是一些可以幫助你開始的PHP代碼。
<?php
// Get the input data and create a PHP object to use.
$fitbitPushData = file_get_contents("php://input");
$fitbitData = json_decode($fitbitPushData);
出於測試目的,我建議首先在http://requestb.in/創建RequestBin,並將它作爲你的用戶端點URL。通過這種方式,您可以輕鬆查看Fitbit在有人同步時發送的數據。您可以將該JSON字符串複製到您的訂閱者URL端點代碼,並在將您的網站設置爲訂閱端點URL之前測試您希望如何處理數據。
一對夫婦的其他課程。我明白了:
根據用戶的量你有可能要在不同的服務器上的用戶的URL。每次用戶同步Fitbit時可能會導致此URL受到攻擊,從而導致大量流量。如果Fitbit在10%或更多時間內失敗,或者在3秒內無法響應,Fitbit將禁用您的訂閱者網址。
另一個重要的部分是,這不會向用戶發送最近的數據。它只會讓你知道他們已經更新了他們的數據。您仍然必須提出API請求才能獲取其最新數據。您每個用戶每小時也只能發出150個API請求,所以對每次檢查用戶的頻率進行限制可能是一件好事。我有一些不斷同步的用戶,每小時都會收到來自Fitbit的電子郵件,表示我的應用程序已經超過了這些用戶的速率限制。
這下面的鏈接有fitbit框架示例代碼[鏈接] http://stackoverflow.com/questions/34393507/fitbit-framework-is-available/34393522#34393522 – Karthik 2015-12-21 10:44:13