Nodejs nodemailer Имя пользователя и пароль не принимаются

Текущая версия Mongoose (v4.x) имеет временную тиснение как встроенную опцию для схемы:

var mySchema = new mongoose.Schema( {name: String}, {timestamps: true} );

Эта опция добавляет свойства createdAt и updatedAt, которые имеют временную метку с Date, и который выполняет всю работу за вас. Каждый раз, когда вы обновляете документ, он обновляет свойство updatedAt. Временные метки схемы.

1
задан Noark 16 January 2019 в 14:56
поделиться

1 ответ

var nodemailer = require('nodemailer');

const transporter = nodemailer.createTransport({
  service: 'gmail',//smtp.gmail.com  //in place of service use host...
  secure: false,//true
  port: 25,//465
  auth: {
    user: 'example@gmail.com',
    pass: 'password'
  }, tls: {
    rejectUnauthorized: false
  }
});

transporter.sendEMail = function (mailRequest) {
  return new Promise(function (resolve, reject) {
    transporter.sendMail(mailRequest, (error, info) => {
      if (error) {
        reject(error);
      } else {
        resolve("The message was sent!");
      }
    });
  });
}

module.exports = transporter;

Использование :

//import transporter JS file
const mail = require('../utils/mail');
let htmlContent = `
                <h1><strong>Contact Form</strong></h1>
                <p>Hi,</p>
                <p>${name} contacted with the following Details</p>
                <br/>
                <p>Email: ${email}</p>
                <p>Phone: ${phone}</p>
                <p>Company Name: ${companyName}</p>
                <p>Message: ${message}</p>
                `
    let mailOptions = {
        from: "Example <example@gmail.com>",
        to: "me@gmail.com",
        subject: "Mail Test",
        text: "",
        html: htmlContent
    }

mail.sendMail(mailOptions)
    .then(function (email) {
        res.status(200).json({ success: true, msg: 'Mail sent' });
    }).catch(function (exception) {
        res.status(200).json({ success: false, msg: exception });
    });

Примечание:

  1. До отправляя электронную почту с помощью Gmail, вы должны разрешить незащищенным приложениям доступ к Gmail. Для этого перейдите в настройки Gmail https://myaccount.google.com/lesssecureapps?pli=1

    [ 115]
  2. Также включите капчу https://accounts.google.com/DisplayUnlockCaptcha

0
ответ дан Rohan Shukla 16 January 2019 в 14:56
поделиться
Другие вопросы по тегам:

Похожие вопросы: