1

我是 OAuth 和django-allauth插件的新手,到目前为止,很难在提到的插件上找到合适的文档。我在这里的一些问题中找到了许多分散的帮助,并从repo中阅读了一些代码,但有些东西我还没有找到。现在,我试图根据与用户关联extra_info的对象中包含的内容来填充我的用户对象SocialAccount。我的问题是我没有找到关于设置 SOCIALACCOUNT_PROVIDERS 的大量文档。到目前为止,我已经收集了一些有用的信息(主要来自这里)并具有以下设置:

SOCIALACCOUNT_PROVIDERS = {
    'facebook': {
        'SCOPE': [
            'email',
            'read_friendlists',
            'user_birthday',
            'user_about_me',
            'user_interests',
            'user_groups'
            ],
        #'AUTH_PARAMS': { 'auth_type': 'reauthenticate' },
        'AUTH_PARAMS': { },
        'METHOD': 'oauth2'
        },
    }

它从 facebook 获取大部分所需信息,但从 twitter 获取,因为没有定义范围,它只获取用户的名称,但无法获取电子邮件以及我想知道的其他一些内容。

我在哪里可以找到为所有提供者定义此设置的大量文档,特别是哪些是放置在SCOPEtwitter 列表中的有效字符串?我怎样才能让 twitter 给我与以前设置从 facebook 获得的信息相同的信息(或关闭)?

谢谢你的帮助!

4

1 回答 1

2

范围相关的参数实际上是依赖于提供者的。您必须在特定提供商的文档中查找参数和可能的内容(对于 FB,请在此处查看有关范围的信息:https ://developers.facebook.com/docs/reference/dialogs/oauth/ ) .

至于 Twitter 上的电子邮件:他们根本不交出这些信息。因此,您的应用程序将不得不应对这种情况。

看:

https://dev.twitter.com/discussions/4019

于 2013-08-29T11:04:42.790 回答