From 6c45bd9681dfeda1575b9f97787179b5d5e6cd28 Mon Sep 17 00:00:00 2001 From: Ryan Barrett Date: Sun, 14 Aug 2016 20:52:42 -0700 Subject: [PATCH] medium bug fixes --- oauth_dropins/medium.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/oauth_dropins/medium.py b/oauth_dropins/medium.py index 295bb093..c830f857 100644 --- a/oauth_dropins/medium.py +++ b/oauth_dropins/medium.py @@ -122,10 +122,8 @@ def get(self): # handle errors error = self.request.get('error') if error: - error_description = urllib.unquote_plus( - self.request.get('error_description', '')) if error == 'access_denied': - logging.info('User declined: %s', error_description) + logging.info('User declined') self.finish(None, state=self.request.get('state')) return else: @@ -149,12 +147,17 @@ def get(self): try: resp = json.loads(resp) - access_token = resp['access_token'] - # TODO: handle refresh token except: logging.exception('Could not decode JSON') raise + errors = resp.get('errors') or resp.get('error') + if errors: + logging.info('Errors: %s', errors) + raise exc.HTTPBadRequest(errors[0].get('message')) + + # TODO: handle refresh token + access_token = resp['access_token'] user_json = MediumAuth(access_token_str=access_token).get(API_USER_URL).text id = json.loads(user_json)['data']['id'] auth = MediumAuth(id=id, access_token_str=access_token, user_json=user_json)