/ / python-social-auth Facebook e l'e-mail dell'utente di LinkedIn sono vuote - python, django, facebook, linkedin, python-social-auth

python-social-auth Facebook e l'email di LinkedIn sono vuote - python, django, facebook, linkedin, python-social-auth

Sto sviluppando un'applicazione web Django usando python-social-auth. Ho questo nelle mie impostazioni di Django:

SOCIAL_AUTH_GOOGLE_OAUTH2_KEY = "xxx"
SOCIAL_AUTH_GOOGLE_OAUTH2_SECRET = "xxx"

SOCIAL_AUTH_FACEBOOK_KEY = "xxx"
SOCIAL_AUTH_FACEBOOK_SECRET = "xxx"
SOCIAL_AUTH_FACEBOOK_SCOPE = ["email",]

SOCIAL_AUTH_LINKEDIN_OAUTH2_KEY = "xxx"
SOCIAL_AUTH_LINKEDIN_OAUTH2_SECRET = "xxx"
SOCIAL_AUTH_LINKEDIN_OAUTH2_SCOPE = ["r_basicprofile", "r_emailaddress"]

Ora Google imposta l'e-mail dell'utente in modo corretto nel modello auth.user nel database, ma LinkedIn e Facebook non hanno nemmeno inviato l'e-mail dell'utente. Che cosa faccio?

risposte:

1 per risposta № 1

Aggiungi questo alle tue impostazioni:

SOCIAL_AUTH_FACEBOOK_PROFILE_EXTRA_PARAMS = {"fields": "id,name,email",}
SOCIAL_AUTH_FIELD_SELECTORS = ["email-address",]

Ora Facebook e LinkedIn invieranno l'email dell'utente e python-social-auth le imposterà automaticamente sul modello Utente nel database.

Spero che questo aiuti qualcuno.