Django-Allauth和django-facebook检索Facebook个人资料图片

时间:2015-03-18 10:14:06

标签: django facebook-graph-api django-allauth django-facebook django-rest-auth

我使用Facebook集成了django-rest-authdjango-allauth用户注册/登录。

现在,我可以验证(我可以创建)Facebook用户,我可以检索一些基本信息,如电子邮件,名字,姓氏......

现在我还需要在我的平台上注册一些关于用户的个人资料图片(最后3个用户个人资料图片)。

我很困惑,因为我无法使用allauth从Facebook获取这些信息所以,我可能需要直接使用Facebook GraphAPI(这是我的解决方案吗?)

django_facebook

的整合是一个很好的解决方案

2 个答案:

答案 0 :(得分:1)

可以使用用户UID和此网址直接检索照片:

  

http://graph.facebook.com/ UID /图象宽度= 40&安培;高度= 40

在功能中:

 fb_uid = SocialAccount.objects.filter(user_id=self.user.id, provider='facebook')

 if len(fb_uid):
         return "http://graph.facebook.com/{}/picture?width=40&height=40".format(fb_uid[0].uid)

答案 1 :(得分:0)

我不完全确定,但我认为当您添加" user_photos"时,您将可以访问用户的照片。在Facebook配置范围列表。你试过吗?

以下是django allauth文档的链接:http://django-allauth.readthedocs.org/en/latest/providers.html#facebook