Dans une application web Python, je peux me connecter à Gmail en utilisant OAuth et IMAP. OAuth utilise le compte Google auquel vous êtes actuellement connecté et vous demande d'autoriser l'accès à l'application web. Cependant, il ne fournit pas d'API pour récupérer l'adresse électronique de ce compte.
Le problème est que, même si l'utilisateur accorde l'accès avec OAuth, pour interfacer avec Gmail, vous devez toujours fournir explicitement l'adresse e-mail dans votre URL de connexion IMAP :
https://mail.google.com/mail/b/[your-email]/imap/
Pour cette raison, l'application web doit demander à l'utilisateur son adresse électronique et leur demander d'autoriser l'accès à partir de Gmail avec OAuth. Pire encore, l'adresse électronique qu'ils saisissent peut ne pas correspondre à l'adresse électronique du compte avec lequel ils accordent l'accès, ce qui fait échouer l'application.
Existe-t-il un moyen d'obtenir votre adresse e-mail à l'aide d'OAuth afin de pouvoir l'insérer dans cette URL sans demander à l'utilisateur de la fournir ? J'ai essayé de regarder sur cette réponse mais Google renvoie un Bad Request
chaque fois que j'utilise les deux https://mail.google.com/
y https://www.googleapis.com/auth/userinfo#email
comme mon champ d'application.