Как отправить электронное письмо без указания моего адреса электронной почты и пароля в node js (nodemailer)? - PullRequest
0 голосов
/ 20 января 2020

Я хочу использовать SMTP-сервер Gmail для отправки приветственного письма при создании учетной записи. Приветственное письмо должно быть отправлено через мой идентификатор Gmail без указания моего адреса электронной почты и пароля в разделе авторизации. мой код здесь ..

var nodemailer = require('nodemailer');

var transporter = nodemailer.createTransport({
  service: 'gmail',
  auth: {
    user: '*****@gmail.com',
    pass: *****
  }
});

var mailOptions = {
  from: 'youremail@gmail.com',
  to: 'myfriend@yahoo.com',
  subject: 'Sending Email using Node.js',
  text: 'That was easy!'
};

transporter.sendMail(mailOptions, function(error, info){
  if (error) {
    console.log(error);
  } else {
    console.log('Email sent: ' + info.response);
  }
});

1 Ответ

2 голосов
/ 20 января 2020

Вы можете указать свое имя пользователя и пароль с помощью переменных среды, таких как

var transporter = nodemailer.createTransport({
  service: 'gmail',
  auth: {
    user: process.env.NODEMAILER_USERNAME,
    pass: process.env.NODEMAILER_PASSWORD
  }
});

, которые можно установить перед запуском процесса в linux, например

NODEMAILER_USERNAME=test@gmail.com&&NODEMAILER_PASSWORD=pass&&./node www/bin

В качестве альтернативы вы можете возможность использовать ключ API (https://developers.google.com/gmail/api/quickstart/nodejs), но если вы не хотите хранить его в своем коде, это будет тот же подход.

...