我有一个heroku应用程序,我正在运行Auth0作为通过oauth登录的方式…我有一些代码或多或少与fitbit api php教程相同-"completeAuthorization.php"。它看起来有点像:
$oauth = new OAuth($conskey, $conssec, OAUTH_SIG_METHOD_HMACSHA1,OAUTH_AUTH_TYPE_AUTHORIZATION);
$oauth->enableDebug();
}
catch( OAuthException $E )
{
print_r($E);
}
echo 'done new oauth';
$oauth->setToken($_SESSION['access_token'], $_SESSION['access_token_secret']);
echo 'done set token';
// Fitbit API call (get activities for specified date)
//http://api.fitbit.com/1/user/28C9GG/activities/date/2013-12-01.xml
$apiCall2 = 'http://api.fitbit.com/1/user/'.$_SESSION['userid'].'/activities/date/2014-02-25.xml';
echo $apiCall2;
// Performing API call
$oauth->fetch($apiCall2);
//$oauth->fetch($apiCall);
var_dump($oauth->getLastResponse());
我从我的index.php页面的Auth0响应中获得用户id,会话秘密和令牌等,但我将它们保存在会话中以将它们保存在我的get活动页面上。
但是当我用Auth0登录后进入我的页面时,我得到了这个错误:http://api.fitbit.com/1/user/28C9GG/activities/date/2014-02-25.xml致命错误:未捕获的异常' oautheexception '伴有消息'无效的授权/错误请求(收到401,预期的HTTP/1.1 20X或重定向)'
我也只能在我的web服务器上得到这个远,它安装了一个pecl oauth扩展,但heroku没有,我不知道如何在heroku上得到它,对此有任何想法,或者为什么我得到上述错误?
下面是一个可能有用的示例:
https://github.com/auth0/Auth0-PHP/tree/master/examples/fitbit特别是callback.php
,那里有一个对fitbit API的调用
Matias