这是我使用python social auth获取用户详细信息的代码。一旦用户通过Facebook验证,并且Facebook重定向回我的自定义URL,我的应用程序就无法登录用户。
如果我删除下面的代码,那么一切顺利(即用户可以登录),但我无法从Facebook获取额外的细节。我需要从Facebook获取出生日期和地址以及其他默认详细信息。
任何有关从Google获取详细信息的帮助都将不胜感激。我找不到任何文档来从Google获取详细信息。
def get_profile_data(backend, details, response, social_user, uid, user, *args, **kwargs):
profile= Profile.objects.get_or_create(user=user)
if backend.__class__.__name__ == 'FacebookOAuth2':
if not user.email and response.get('email'):
user.email = response.get('email')
if not profile.gender and response.get('gender'):
profile.gender = response.get('gender')
if not profile.date_of_birth and response.get('birthday'):
datestring = response.get('birthday')
date_format = "%m/%d/%Y"
profile.date_of_birth = datetime.strptime(datestring, date_format)
profile.user = user
profile.save()
user.save()
答案 0 :(得分:0)
试试这个:
if backend.__class__.__name__ == 'FacebookBackend':