Ответ 1
Примечания по этому ответу автор:
Итак, мне наконец удалось разобраться. Я удивлен, что не мог найти больше ресурсов для этого, поэтому для тех, кто должен использовать
Gmail
сNodemailer
Я нашел ответ здесь: http://masashi-k.blogspot.fr/2013/06/sending-mail-with-gmail-using-xoauth2.html
Попробуйте создать нового пользователя, если у вас уже есть один, и все не работает нормально. Это было для меня.
Я надеюсь, что это будет полезно кому-то,
Приветствия
Вопрос 1: Что такое токен обновления?
Из найденной документации здесь:
Ток обновления предоставляет вашему приложению постоянный доступ к API Google, пока пользователь не зашел в ваше приложение.
(...)
Вопросы:
Обязательно сохраняйте токен обновления безопасно и постоянно, потому что вы можете получить токен обновления только в первый раз, когда вы выполняете поток обмена кодами.
Существуют ли ограничения на количество токенов обновления, которые выдаются - один лимит на комбинацию клиент/пользователь, а другой - на каждого пользователя для всех клиентов. Если ваше приложение запрашивает слишком много токенов обновления, оно может работать в этих пределах, и в этом случае старые токены обновления перестают работать.
См. также Автономный доступ и Использование токена обновления.
Вопрос 2: Как мне получить?
Шаг 1: Получить учетные данные OAuth 2.0 в Google Developers Console
Как указано здесь, вы должны:
- Перейдите в Консоль разработчиков Google.
- Выберите проект или создайте новый.
- На боковой панели слева разверните API и авторизуйтесь. Затем нажмите API. Выберите ссылку Включенные API в разделе API, чтобы просмотреть список всех поддерживаемых API. Убедитесь, что "API Gmail" включен в список разрешенных API. Если вы не включили его, выберите API-интерфейс Gmail из списка API (в соответствии с API Google Apps), а затем выберите Включить API для API.
- На боковой панели слева выберите Учетные данные.
- Если вы еще этого не сделали, создайте свои учетные данные OAuth 2.0 проекта, нажав Создать новый идентификатор клиента и предоставив информацию, необходимую для создания учетных данных.
- Найдите таблицу Client ID и Client в таблице, связанной с каждым вашим учетным данными.
ОПЛАТИТЬ СПЕЦИАЛЬНОЕ ВНИМАНИЕ, указав
https://developers.google.com/oauthplayground
как Redirect URI, когда вы создаете нового пользователя в консоли. В противном случае вы получите сообщение об ошибке.
Шаг 2: Получите токен обновления на Google OAuth2.0 Playground
- Перейдите на Игровая площадка Google Oauth2.0.
- Нажмите кнопку Gear на правом верхнем углу. Задайте Идентификатор клиента и Клиентская конфиденциальность, полученный из Google Developers Console, и выберите Доступ к токену как Заголовок авторизации с префиксом носителей. Закройте эту конфигурацию.
- Настройте области. Используйте
https://mail.google.com/
так, как вам нужно,Nodemailer
. Затем нажмите кнопку Авторизовать API.
- После авторизации OAuth2.0, код авторизации обмена для токенов и voilá! ваш токен обновления готов к использованию