2

これを使用してアクセス トークンを更新する方法がわかりません: https://github.com/orcasgit/python-fitbit

アクセス トークンとリフレッシュ トークンを取得できました。また、fitbit からデータを取得することもできました。しかし、アクセス トークンの有効期限が切れた後、私は道に迷いました。FitbitOauth2Client オブジェクトを作成し、refresh_token 関数を使用して新しいトークンを取得することになっていると思います。以下は私が得た最も近いものです。

tokenfresh=fitbit.FitbitOauth2Client(client_id=ci,client_secret=consumer_secret,access_token=at,refresh_token=rt)

私は答えを探し回ったので、どんな助けも大歓迎です。

4

1 に答える 1

1

問題はコードではありません。古いリフレッシュ トークンを使用してアクセス トークンを生成すると、FitBit は新しいリフレッシュ トークンを提供します。コードを機能させるために、この更新トークンを追跡する必要があります。例えば。

def fitbit_data(credentials):
    client_id = os.environ.get("FITBIT_CLIENT_ID")
    client_secret = os.environ.get("FITBIT_CLIENT_SECRET")

    oauth = fitbit.FitbitOauth2Client(client_id=client_id,
                                      client_secret=client_secret,
                                      refresh_token=str(credentials.get('refresh_token')),
                                      access_token=str(credentials.get('access_token')))
    token = oauth.refresh_token()
    update_refresh_token(token)

    app_client = fitbit.Fitbit(client_id=client_id, client_secret=client_secret,
                           access_token=token.access_token, refresh_token=token.refresh_token)
    steps = app_client.time_series(
        resource='activities/steps',
        period='1d'
    )
    return steps
于 2016-12-29T11:00:06.667 に答える