2017-08-29 83 views
0

第一次使用python-social-auth和Django,但无法准确计算出用户的社交帐户有多少信息可供我使用。在视图中从Django Python Social Auth获取用户信息


当我访问UserSocialAuth对象,我可以得到UID的extra_data,和的access_token。为了获得额外的细节,我是通过社交公司的(例如facebook)API来提供这些信息的?


我可以看到,对于一些社会auths中,如Facebook Django的user对象神奇地从社会的配置文件中的姓氏和名字填充,但对于其他类似LinkedIn不起作用。如何在不手动探测每个社交身份验证的情况下找出哪些信息可用于每个社交身份验证?


我只是想从用户那里得到尽可能多的“个人资料”数据,并很担心通过API去,是实现这一目标的“很长的路要走”。我实际上已经阅读了文档,但对我来说可能太过先进;我不知道如何使用管道从视图中获取的数据。我甚至不确定这句话是否合理!

回答

1

python-social-auth只会获取一定位填写:

  • 电子邮件
  • 用户名
  • 名字
  • 姓氏

某些API将提供身份验证过程中更多的细节流量,那些可以保存在extra_data基于SOCIAL_AUTH_EXTRA_DATA setti NG。

某些后端将向提供程序中的API发出调用以获取额外数据。调试可用数据的简单方法是在默认步骤之间添加自定义管道,并在args中打印所有内容。

根据uidaccess_token,是的,你说得对,当调用提供者提供的任何API时都需要这些值,有时候两者都有,有时access_token就足够了。

相关问题