首页 > 解决方案 > Nodemailer - 缺少“PLAIN”的凭据

问题描述

我正在使用 node.js 并尝试通过 Nodemailer 发送电子邮件,但出现此错误:

“PLAIN”缺少凭据

function(token, user, done) { //sends mail
      var smtpTransport = nodemailer.createTransport({
        service: 'Gmail', 
        auth: {
          user: 'aimanmumtazxyz@gmail.com',
          pass: process.env.GMAILPW
        }
      }); 

任何帮助任何人?

标签: node.jsnodemailer

解决方案


const nodemailer = require("nodemailer");

async function main() {
    // create reusable transporter object using the default SMTP transport
    let transporter = nodemailer.createTransport({
    host: "smtp.gmail.com",
    port: 587,
    secure: false, // true for 465, false for other ports
    auth: {
        user: userName, // Enter your userName or email
        pass: password // Enter your password
    }
});

// send mail with defined transport object
await transporter.sendMail({
    from: '"Fred Foo " <foo@example.com>', // sender address
    to: "bar@example.com, baz@example.com", // list of receivers
    subject: "Hello ✔", // Subject line
    text: "Hello world?", // plain text body
    html: "<b>Hello world?</b>" // html body
}, (err, info)=>{
    if (err) {
        throw new Error(err)
    } else {
        console.log('Email sent: ' + info.response);
    }
});

有关 nodemailer 的更多信息,请查看此链接:https ://nodemailer.com/about/

如需通过 Gmail 发送电子邮件,请查看此链接:https ://nodemailer.com/usage/using-gmail/


推荐阅读