gpt4 book ai didi

python - 通过 PyFacebook 访问 Facebook Connect FBML cookie?

转载 作者:太空宇宙 更新时间:2023-11-03 19:39:03 25 4
gpt4 key购买 nike

通过 Facebook Connect FBML 按钮登录后,是否可以通过 PyFacebook 检索和使用 session 详细信息?我可以像通过 Python 触发登录一样使用 auth.getSession() 吗?

基本上,我正在尝试确定是否可以替换以下示例中直至并包括 raw_input() 的阶段:

import facebook

API_KEY = 'xxx'
SECRET_KEY = 'xxx'

facebook = facebook.Facebook(API_KEY, SECRET_KEY)

facebook.auth.createToken()

facebook.login()

# Login to the window, then press enter
print 'After logging in, press enter...'
raw_input()

# This is where FBML button should get me

facebook.auth.getSession()
print 'Session Key: ', facebook.session_key
print 'Your UID: ', facebook.uid

最佳答案

使用Verifying the Facebook User在开发人员 wiki 页面上,我找到了 PyFacebook getSessionvalidate_signaturegetLoggedInUser 方法以及在 PyFacebook 的 Django example.py 中找到的代码:

if 'session_key' in request.session and 'uid' in request.session:
fb.session_key = request.session['session_key']
fb.uid = request.session['uid']
else:

try:
fb.auth_token = request.GET['auth_token']
except KeyError:
# Send user to the Facebook to login
return HttpResponseRedirect(fb.get_login_url())

# getSession sets the session_key and uid
# Store these in the cookie so we don't have to get them again
fb.auth.getSession()
request.session['session_key'] = fb.session_key
request.session['uid'] = fb.uid

使用 FBML 按钮对 Zope3 进行以下快速测试:

import facebook

API_KEY = 'your_api_key'
SECRET_KEY = 'your_secret_key'

fb = odb.facebook.Facebook(API_KEY, SECRET_KEY)

fb_uid = self.request[API_KEY+'_user']
fb_session_key = self.request[API_KEY+'_session_key']
fb_ss = self.request[API_KEY+'_ss']
fb_signature = self.request[API_KEY] #no suffix for signature

fb.session_key = fb_session_key
fb.uid = fb_uid

fb.friends.get() # Results in list of friends

关于python - 通过 PyFacebook 访问 Facebook Connect FBML cookie?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1613772/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com