第一次使用python-social-auth和Django时,却无法确切地知道有多少关于用户社交帐户的信息可供我使用。
当我访问UserSocialAuth对象的extra_data
时,我可以获取uid和access_token。为了获得更多细节,我可以通过社交公司(前脸谱)API提供这些信息吗?
我可以看到,对于像Facebook这样的社交作家来说,Django的user
对象神奇地填充了社交个人资料中的名字和姓氏,但对于像LinkedIn这样的其他人来说,这些名字并不起作用。如何在不手动探测每个社会认证的情况下找出哪些信息可用?
我只想努力获得更多"个人资料"来自用户的数据,我担心通过API是长期的"实现这一目标。我实际上已经阅读了文档,但对我来说可能太先进了;我不知道如何使用视图中管道获取的数据。我甚至不确定这句话是否有意义!
答案 0 :(得分:1)
python-social-auth
只会获取必要的位来填充:
某些API会在身份验证流程中提供更多详细信息,可以根据SOCIAL_AUTH_EXTRA_DATA设置将这些详细信息保存在extra_data
中。
某些后端会向提供程序中的API发出调用以获取额外数据。调试可用数据的一种简单方法是在默认步骤之间添加自定义管道,并在args中打印所有内容。
根据uid
和access_token
,是的,您是对的,在调用提供商提供的任何API时都需要这些值,有时两者都有,有时access_token
就足够了。< / p>