我正在尝试在我的Web应用程序上使用Facebook登录。 但是,我不断收到此错误消息:
return self.view_functions[rule.endpoint](**req.view_args).
File "/vagrant/itemcat2/application.py",
line 230, in fbconnect
login_session['username'] = data["name"]
KeyError: 'name'
为什么说数据名称是键错误并且不存在? 我该如何解决?
下面是错误消息指向的代码:
url ='https://graph.facebook.com/v2.8/me?access_token=%s&fields=name,id,email'%令牌
h = httplib2.Http()
result = h.request(url, 'GET')[1]
data = json.loads(result)
login_session['provider'] = 'facebook'
login_session['username'] = data["name"]
login_session['email'] = data["email"]
login_session['facebook_id'] = data["id"]
# Store token in login_session in order to logout
stored_token = token.split("=")[1]
login_session['access_token'] = stored_token
答案 0 :(得分:1)
他的问题已经解决,我可以弄清楚我的令牌没有很好地分割。下面的代码解决了 token = result.split(',')[0] .split(':')[1] .replace('“',))