【问题标题】:Django allauth get full linkedin detailsDjango allauth 获取完整的链接信息
【发布时间】:2017-01-31 16:03:14
【问题描述】:

将 django-allauth 与linkedin 结合使用,但无法从用户的个人资料中获取完整的个人资料。

在设置文件中

SOCIALACCOUNT_PROVIDERS = { 
        'stackexchange': { 'SITE': 'stackoverflow' },
        'linkedin':{'SCOPE': ['r_basicprofile', 'r_emailaddress']}
    }

我在帐户上检查 extra_data 并获取

{u'firstName': u'Samuel', u'lastName': u'Muiruri', u'pictureUrls': {u'_total': 1, u'values': [u'https://media.licdn.com/mpr/mprx/0_C1AR7HY-6mvzKOYWkCPzody-62WvzgOW5_7nWd8yaZHnlyuFFiKcIigGyxn']}, u'pictureUrl': u'https://media.licdn.com/mpr/mprx/0_dCvykIHSymsQZ-MUdbc_kWwSpuuw4-4UI5TikeHriWZsFnfR5k5KoHyO-G2vUzJBHTBCwfVnu3gN', u'emailAddress': u'muiruri.samuel@gmail.com', u'publicProfileUrl': u'https://www.linkedin.com/in/samuel-muiruri-a5235532', u'id': u'_xLBtzYkuK'}

在linkedin dev oauth页面上我选择了电子邮件和r_basicprofile

更新

oauth 2 中链接的可用选项

并在通过linkedin登录时授予权限

【问题讨论】:

    标签: django django-allauth


    【解决方案1】:

    如果在linkedin 页面上您只为您的应用授予了r_basicprofile 的访问权限,您将无法获得r_fullprofile。要让您的应用访问完整的个人资料,请在链接的 oauth 页面上授予它对 r_fullprofile 的访问权限。

    来自the LinkedIn docs

    所有 REST API 调用都需要领英会员授予某些权限才能进行。该系统确保成员在批准之前了解应用程序可能代表他们访问或执行的操作。

    要求成员授予的权限取决于您告诉应用程序在 OAuth 2.0 身份验证过程中请求的权限。它们可以在 LinkedIn 应用程序配置本身中指定,也可以在 OAuth 2.0 流程的授权步骤中使用范围参数显式请求。

    【讨论】:

    • 不要认为是这种情况更新了问题,oauth 的可用选项只是基本配置文件,在设置文件中编辑为相同的名称,登录时它确实声明“和当前位置”
    猜你喜欢
    • 2012-02-29
    • 1970-01-01
    • 1970-01-01
    • 2016-06-13
    • 2023-03-11
    • 2019-11-15
    • 1970-01-01
    • 2023-03-19
    • 2018-01-27
    相关资源
    最近更新 更多