Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Fixes when oauth tokens expired and fetches a new token.
  Thanks to Michel Shim @shimeez
  • Loading branch information
tchellomello committed Aug 28, 2016
commit 954017c9ae5ab62a2489e097b18ad8f4f33ea08c
3 changes: 2 additions & 1 deletion fitbit/api.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
from urllib import urlencode

from requests_oauthlib import OAuth2, OAuth2Session
from oauthlib.oauth2.rfc6749.errors import TokenExpiredError
from fitbit.exceptions import (BadResponse, DeleteError, HTTPBadRequest,
HTTPUnauthorized, HTTPForbidden,
HTTPServerError, HTTPConflict, HTTPNotFound,
Expand Down Expand Up @@ -66,7 +67,7 @@ def make_request(self, url, data={}, method=None, **kwargs):
try:
auth = OAuth2(client_id=self.client_id, token=self.token)
response = self._request(method, url, data=data, auth=auth, **kwargs)
except HTTPUnauthorized as e:
except (HTTPUnauthorized, TokenExpiredError) as e:
self.refresh_token()
auth = OAuth2(client_id=self.client_id, token=self.token)
response = self._request(method, url, data=data, auth=auth, **kwargs)
Expand Down