本文整理汇总了Python中facebook.Facebook.exchange_code_for_auth_token方法的典型用法代码示例。如果您正苦于以下问题:Python Facebook.exchange_code_for_auth_token方法的具体用法?Python Facebook.exchange_code_for_auth_token怎么用?Python Facebook.exchange_code_for_auth_token使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类facebook.Facebook
的用法示例。
在下文中一共展示了Facebook.exchange_code_for_auth_token方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: AuthFactory
# 需要导入模块: from facebook import Facebook [as 别名]
# 或者: from facebook.Facebook import exchange_code_for_auth_token [as 别名]
class AuthFactory(object):
# TODO: begin auth/verify auth needed
@staticmethod
def FacebookAuth(func):
def authenticated_request_method(self, *args, **kw):
from gaesessions import get_current_session
session = get_current_session()
self.user = None
self.fb = Facebook(creds['AppSecret'], creds['AppID'])
if session.has_key('fb_auth_state') and session['fb_auth_state'] == self.request.get('state'):
if self.fb.exchange_code_for_auth_token(self.request):
session.terminate()
session = get_current_session()
session['uid'] = 'F' + self.fb.uid
self.user = UserFactory.getFacebookUser(self.fb)
else:
if session.has_key('uid'):
self.user = UserFactory.getFacebookUserById(session['uid'])
elif not self.fb.check_authentication(self.request):
if session.is_active():
session.terminate()
import hashlib
md5 = hashlib.md5()
md5.update("cam is cool")
session['fb_auth_state'] = md5.hexdigest()
else:
if not session.has_key('uid'):
session['uid'] = 'F' + self.fb.uid
self.user = UserFactory.getFacebookUser(self.fb)
func(self, *args, **kw)
return authenticated_request_method