2013-11-24 13 views
0

Я пытаюсь использовать Nodemailer для отправки электронной почты с моей учетной записью GMail, но он не работает, он работает локально, но на моем удаленном сервере я получаю письмо от Google «Кто-то использует вашу учетную запись .... "Nodemailer и GMail с токенами доступа

Как я могу это сделать?

exports.contact = function(req, res){ 
     var name = req.body.name; 
     var from = req.body.from; 
     var message = req.body.message; 
     var to = '******@gmail.com'; 
     var transport = nodemailer.createTransport("SMTP", { 
      service: 'Gmail', 
      auth: { 
       XOAuth2: { 
        user: "******@gmail.com", 
        clientId: "*****", 
        clientSecret: "******", 
        refreshToken: "******", 
       } 
      } 
     }); 
     var options = { 
      from: from, 
      to: to, 
      subject: name, 
      text: message 
     } 
     transport.sendMail(options, function(error, response) { 
      if (error) { 
      console.log(error); 
      } else { 
      console.log(response); 
      } 
      transport.close(); 
     }); 
    } 
+0

Ответить здесь - http://stackoverflow.com/q/24098461/4640499. –

ответ

1

Заканчивать раствор из Unable to send email via google smtp on centos VPS:

В моем случае, мой скрипт на VPS, так что я не есть способ, чтобы загрузить любой URL в браузере. Что я сделал: изменил мой gmail pw. Gmail> Настройки> Аккаунты. Затем в учетных записях Google они указали подозрительные логины, которые были заблокированы Google (это были попытки входа в мой скрипт). Затем я нажал кнопку «Да, это был я». После этого мой скрипт работал (используя новый pw).

+0

Хорошо, но есть ли другое решение, потому что кажется странным, что мы должны изменить пароль и разблокировать наш скрипт ... – tonymx227

Смежные вопросы