Я использую python tornado 4.1. Я пытаюсь войти в facebook из своих демо, но это вызывает ошибку. Я сделал скриншот для ошибки.Python Tornado Facebook Auth Ошибка
Ошибка:
AuthError: Facebook auth error: HTTPResponse(_body=None,buffer=<_io.BytesIO object at 0x29f0290>,code=400,effective_url='https://graph.facebook.com/oauth/access_token?client_secret=&code=&client_id=&redirect_uri=http%3A%2F%2Fsoctag.com%2F%2Fauth%2Ffacebooklogin',error=HTTPError('HTTP 400: Bad Request',),headers={'Content-Length': '190', 'Facebook-Api-Version': 'v1.0', 'Expires': 'Sat, 01 Jan 2000 00:00:00 GMT', 'X-Fb-Debug': 'fKw1RAojsZPT2jl7ErDX4S6c2ROg8TgV1KqFn3Yexc9jgJetmP4K0nFZTrATG7cH5ESLJZ51HyACUJQszv5Fmw==', 'X-Fb-Rev': '1685640', 'Connection': 'close', 'Pragma': 'no-cache', 'Cache-Control': 'no-store', 'Date': 'Mon, 13 Apr 2015 11:18:34 GMT', 'Access-Control-Allow-Origin': '*', 'Content-Type': 'text/javascript; charset=UTF-8', 'Www-Authenticate': 'OAuth "Facebook Platform" "invalid_code" "Error validating verification code. Please make sure your redirect_uri is identical to the one you used in the OAuth dialog request"'},reason='Bad Request',request=<tornado.httpclient.HTTPRequest object at 0x2a2edd0>,request_time=0.5871150493621826,time_info={})
Scrrenshoot
Код:
class AuthFacebookLoginHandler(tornado.web.RequestHandler, tornado.auth.FacebookGraphMixin):
@tornado.gen.coroutine
def get(self):
if self.get_argument("code", False):
user = yield self.get_authenticated_user(
redirect_uri=Helper.url('/auth/facebooklogin'),
client_id=self.settings["facebook_api_key"],
client_secret=self.settings["facebook_secret"],
code=self.get_argument("code"))
self.redirect("/auth/facebookmain")
else:
yield self.authorize_redirect(
redirect_uri=Helper.url('/auth/facebooklogin'),
client_id=self.settings["facebook_api_key"],
extra_params={"scope": "read_stream"})
class AuthFacebookMainHandler(tornado.web.RequestHandler, tornado.auth.FacebookGraphMixin):
@tornado.gen.coroutine
def get(self):
new_entry = yield self.facebook_request(
"/me/feed",
post_args={"message": "I am posting from my Tornado application!"},
access_token=self.current_user["access_token"])
if not new_entry:
# Call failed; perhaps missing permission?
yield self.authorize_redirect()
return
self.finish("Posted a message!")
Можете ли вы сделать эту ошибку немного больше или на самом деле поставить текст в свой вопрос или что-то еще. – miradulo
@DonkeyKong Я также поместил ошибку как текст – Alexander