class Facebook(AbstractOauthMethod): method = "facebook" auth_service = None def __init__(self, key, secret): self.auth_service = OAuth().remote_app(self.method, base_url='https://graph.facebook.com/', request_token_url=None, access_token_url='/oauth/access_token', authorize_url='https://www.facebook.com/dialog/oauth', consumer_key=key, consumer_secret=secret, request_token_params={'scope': 'email'} ) super(Facebook, self).__init__(self.method, self.auth_service) def get_user_info(self, resp): session['oauth_token'] = (resp['access_token'], '') return self.auth_service.get('/me').data['name']