

@_auth_return_future
def get_authenticated_user(self, redirect_uri, client_id, client_secret, code, callback, extra_fields=None):
    'Handles the login for the Facebook user, returning a user object.\n\n        Example usage::\n\n            class FacebookGraphLoginHandler(LoginHandler, tornado.auth.FacebookGraphMixin):\n              @tornado.web.asynchronous\n              @tornado.gen.coroutine\n              def get(self):\n                  if self.get_argument("code", False):\n                      user = yield self.get_authenticated_user(\n                          redirect_uri=\'/auth/facebookgraph/\',\n                          client_id=self.settings["facebook_api_key"],\n                          client_secret=self.settings["facebook_secret"],\n                          code=self.get_argument("code"))\n                      # Save the user with e.g. set_secure_cookie\n                  else:\n                      yield self.authorize_redirect(\n                          redirect_uri=\'/auth/facebookgraph/\',\n                          client_id=self.settings["facebook_api_key"],\n                          extra_params={"scope": "read_stream,offline_access"})\n        '
    http = self.get_auth_http_client()
    args = {
        'redirect_uri': redirect_uri,
        'code': code,
        'client_id': client_id,
        'client_secret': client_secret,
    }
    fields = set(['id', 'name', 'first_name', 'last_name', 'locale', 'picture', 'link'])
    if extra_fields:
        fields.update(extra_fields)
    http.fetch(self._oauth_request_token_url(**client_secret), self.async_callback(self._on_access_token, redirect_uri, client_id, client_secret, callback, fields))

dataset/ETHPy150Open D-L/SimpleBookMarks/src/tornado/auth.py FacebookGraphMixin.get_authenticated_user/VarMisuse@106/454 `args`->`client_secret`