2

我目前正在使用带有 laravel 包装器的 fitbit 库(请参阅https://github.com/popthestack/fitbitphp)。

一旦用户进行身份验证,我就会尝试存储访问令牌,然后重用该令牌,而不必每次都单独请求新令牌。是否可以使用 fitbits oauth 1 实现来重用访问令牌,或者我每次都需要使用请求令牌等发出新请求。我提前道歉,我首先对 oauth 有相当深刻的理解,但尤其是 fitbit 一直在绊倒我。谢谢。

这是我从 fitbit 请求信息的功能...

public function getFitbit() {
    // get data from input
    $code = Input::get( 'oauth_token' );

    // get fb service
    $fb = fitbitOauth::consumer( 'Fitbit' );

    // if code is provided get user data and sign in
    if ( !empty( $code ) ) {
        // This was a callback request from fitbit, get the token
        $fb->requestAccessToken(
            $_GET['oauth_token'],
            $_GET['oauth_verifier']
        );

        // Send a request now that we have access token
        $result = json_decode($fb->request('user/-/profile.json'));

        print_r($result);

    }
    // if not ask for permission first
    else {
        // get fb authorization
        $token = $fb->requestRequestToken();
        $url = $fb->getAuthorizationUri(array('oauth_token' => $token->getRequestToken()));

        // return to facebook login url
         return Redirect::to( (string)$url );
    }
}

我可以运行上面的例子。将用户引导到他们可以验证其帐户的页面。然后,这将重定向到显示其信息的页面。如果我重新加载设置了“令牌”和“验证程序”的页面,它就会失败。我希望能够将他们的令牌保存到数据库中并在将来引用它。

4

0 回答 0