Программа командной строки для отправки почты через gmail api - PullRequest
0 голосов
/ 28 марта 2020

Я годами пытался время от времени пытаться написать программу для отправки электронной почты из командной строки с помощью API Gmail. Поскольку в настоящее время у меня есть время, я вернулся к этому, используя Qt и класс QOAuth2AuthorizationFlow.

Я нашел этот вопрос , который я адаптировал и дошел до этого уровня. как просмотр страницы в моем браузере с длинной строкой, начинающейся с «4 /», которую он говорит мне скопировать и вставить в мое приложение.

Насколько я помню протокол OAuth2, эта строка является кодом авторизации что мне нужно перейти к следующему этапу процесса аутентификации. Этот этап пропустит мне доступ и обновит токены sh, которые мне нужно сохранить. Мне нужно будет передавать токен доступа с каждым запросом, требующим авторизации. Время от времени срок действия токена доступа истекает, и мне нужно будет использовать токен refre sh, чтобы получить новый доступ, и токены refre sh.

Итак, вопросы:

  1. Правильно ли я запомнил протокол OAuth2?
  2. Что мне делать со строкой, отображаемой в моем браузере - как запросить доступ и обновить sh токены?
  3. Как только я его получу как использовать токен доступа?
  4. Как использовать токен refre sh для запроса новых токенов?
  5. Я считаю, что этот цикл ручного копирования строки из браузера в мой Приложение - это однократный этап инициализации, и при последующих запусках будет стремиться получить маркер устаревшего доступа, который будет прозрачно заменен с использованием токена refre sh. Я предполагаю использовать программу, чтобы сообщать об ошибках от ночных запусков различных сценариев доморощенного. В природе вещей, это не будет использоваться очень часто. Возможно ли, что токены refre sh будут работать достаточно долго, или мне нужно будет отправлять себе обычное тестовое письмо, чтобы токены refre sh были действительными.
...