В веб-приложении Python я могу подключиться к Gmail, используя OAuth и IMAP. OAuth просто использует любую учетную запись Google, в которую вы сейчас вошли, и просит предоставить вам доступ к веб-приложению. Однако он не предоставляет API для фактического получения адреса электронной почты этой учетной записи.
Проблема в том, что, хотя пользователь предоставляет доступ через OAuth, для взаимодействия с Gmail все равно необходимо явно указать адрес электронной почты в URL-адресе подключения IMAP:
https://mail.google.com/mail/b/[your-email]/imap/
Из-за этого веб-приложение должно запрашивать у пользователя адрес электронной почты и запрашивать у него доступ из Gmail через OAuth. Хуже всего то, что введенный ими адрес электронной почты может не совпадать с адресом электронной почты учетной записи, к которой они предоставляют доступ, что приводит к сбою приложения.
Есть ли способ получить свой адрес электронной почты с помощью OAuth, чтобы вы могли поместить его в этот URL-адрес, не спрашивая его у пользователя? Я пытался посмотреть этот ответ , но Google возвращает Bad Request
всякий раз, когда я использую и https://mail.google.com/
, и https://www.googleapis.com/auth/userinfo#email
в качестве области действия.