2015-05-24 3 views
2

После 10 часов работы с различными библиотеками php-библиотек я обращаюсь к stackoverflow за помощью.fitbit php auth не работает

Это не работает: https://github.com/heyitspavel/fitbitphp

Использование

$profile = $fitbit->getProfile(); 

с тем, что библиотеки возвращается

Fatal error: Uncaught exception 'FitBitException' with message 'Your Fitbit request failed. Code: 400' in /var/www/api/fitbitphp.php:324 Stack trace: #0 /var/www/api/addFitbit.php(22): FitBitPHP->getProfile() #1 {main} thrown in /var/www/api/fitbitphp.php on line 324 

Это библиотека на сайте FitBit, кажется, что много людей имеют проблема с этим.

public function getProfile() 
{ 
    $headers = $this->getHeaders(); 

    try { 
     $this->oauth->fetch($this->baseApiUrl . "user/" . $this->userId . "/profile." . $this->responseFormat, null, OAUTH_HTTP_METHOD_GET, $headers); 
    } catch (Exception $E) { 
    } 
    $response = $this->oauth->getLastResponse(); 
    $responseInfo = $this->oauth->getLastResponseInfo(); 
    if (!strcmp($responseInfo['http_code'], '200')) { 
     $response = $this->parseResponse($response); 

     if ($response) 
      return $response; 
     else 
      throw new FitBitException($responseInfo['http_code'], 'Fitbit request failed. Code: ' . $responseInfo['http_code']); 
    } else { 
     throw new FitBitException($responseInfo['http_code'], 'Your Fitbit request failed. Code: ' . $responseInfo['http_code']); 
    } 
} 

Я попытался это здесь, но он не возвращает пользователя маркер или идентификатор сеанса https://github.com/nostra999/fitbit-api

ответ

1

Возможно пропустил этап инициализации, как описано в файле README Lib (https://github.com/heyitspavel/fitbitphp/blob/master/README.md)

Простой рабочий использование является:

<?php 
define('FITBIT_KEY', '777'); // The application key registered 
define('FITBIT_SECRET', '777'); // The application secret registered 

$fitbit = new FitBitPHP(FITBIT_KEY, FITBIT_SECRET); 
$fitbit->initSession('http://localhost:8080/fibit'); // callback URL 
$fitbit->getProfile(); 

Также из API документации FitBit: https://wiki.fitbit.com/display/API/API+Response+Format+And+Errors#APIResponseFormatAndErrors-Response

400 Bad Request Любой случай, когда либо конечная точка не существует, ресурс параметры пути являются недействительными, параметры запроса POST являются недействительными или нет заголовка аутентификации не предусмотрено. Это не включает в себя недопустимые конкретных ресурсов идентификаторы

Если это не помогает, пожалуйста, предоставьте полный код, который вы запускаете, а не только

$ профиль = $ fitbit-> getProfile();

Смежные вопросы