2013-08-23 3 views
0

Я новичок в OAuth и плагине django-allauth, и до сих пор было действительно сложно найти правильную документацию по указанному плагину. Я нашел много разосланной помощи в некоторых вопросах здесь и прочитал код от the repo, но есть некоторые вещи, которые я еще не нашел. Прямо сейчас я пытаюсь заполнить свой пользовательский объект на основе extra_info, содержащегося в объекте , связанном с пользователем. Моя проблема в том, что я не нашел обширной документации для установки SOCIALACCOUNT_PROVIDERS. До сих пор, я собрал некоторую полезную информацию (в основном из here) и имеют следующие параметры:Django allauth scope Документация 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, но из твиттере, так как не существует сфера определена, она только получает имя пользователя, но не получает электронную почту и некоторые другие вещи, которые я хотел бы знать.

Где я могу найти обширную документацию при определении этого параметра для всех поставщиков и, в частности, которые являются действительными строками для размещения в списке SCOPE для твиттера? Как я могу сделать твиттер, дать мне ту же информацию (или закрыть), что я получаю от facebook с предыдущей настройкой?

Благодарим за помощь!

+0

' 'СФЕРА': [ 'r_emailaddress'] '? – karthikr

+0

Кажется, это не работает для меня :(Я даже отменил доступ к моему приложению, чтобы попытаться «обновить» разрешения, но я не получаю письмо в поле «extra_info». Кроме того, я хотел бы, если возможно, обширную документацию по настройке «SCOPE». Спасибо! – Throoze

ответ

1

Параметры, относящиеся к сфере видимости, зависят от поставщика. Вам нужно будет найти параметры и что возможно в документации конкретного провайдера (для FB, проверьте здесь информацию о сфере: https://developers.facebook.com/docs/reference/dialogs/oauth/).

Что касается электронной почты на Twitter: они просто не передают эту информацию. Таким образом, ваше приложение должно будет справиться с этим.

См:

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

+0

Еще раз спасибо за ваш ответ! Еще один вопрос: где я могу прочитать про вопрос о других вещах, кроме электронной почты (например, аватара или биография)? есть ли какая-либо страница с определением ключа области видимости, так же как facebook имеет [этот] (https://developers.facebook.com/docs/reference/login/)? – Throoze