2015-09-25 70 views
1

我使用python的社會身份驗證與Facebook的連接,但我沒有收到在我的設置我已經添加的用戶 的電子郵件:Django的蟒蛇社會權威性獲取Facebook郵件

SOCIAL_AUTH_FACEBOOK_SCOPE = ['email',] 
SOCIAL_AUTH_FACEBOOK_PROFILE_EXTRA_PARAMS = { 
'fields': 'id, name, email, age_range' 
} 

,我已經寫了自定義管道獲得用戶的電子郵件:

def create_user_profile(strategy, details, response, user=None, *args, **kwargs): 
    print(kwargs['response'].get('name')) 

在這裏我無法獲得用戶的電子郵件

我怎樣才能獲得用戶的電子郵件。需要建議

+0

爲什麼你要取'name'字段而不是'email'嗎? – FSp

回答

1

據我所知,email不包括在基本範圍內。這就是爲什麼你需要明確表明你也需要電子郵件。

在你的設置文件執行此操作:

SOCIAL_AUTH_FACEBOOK_SCOPE = ['email'] 

,並嘗試通過Facebook註冊用戶。他會被問到他是否同意授予這些權限,包括電子郵件。如果他同意,你會收到他的電子郵件response['email']

+0

如果你看我的代碼我正在做你建議我 – aryan

+0

當用戶第一次註冊時,Facebook是否要求'email'權限? –