Nodemailer不能在数字海洋Ubuntu 16.04服务器上工作吗?

时间:2018-09-07 12:52:38

标签: node.js express nodemailer

我有一堆代码可以发送邮件。在我的本地计算机上可以正常工作,但是当我将其上传时,数字海洋vps服务器(运行ubuntu 16.04)不能正常工作吗?

我正在使用gmail发送电子邮件。

我的代码:

const output = `
    <p>This mail is from careerline.io</p>
    <h3>5 digit Account Activation Code</h3>
    <ul>  
        <li>Your Name: ${req.body.name}</li>
    </ul>

`;

let transporter = nodemailer.createTransport({
    host: 'smtp.gmail.com',
    port: 587,
    secure: false,
    auth: {
        user: '**@gmail.com',
        pass: '***'
    },
    tls: {
        rejectUnauthorized: false
    }
});


let mailOptions = {
    from: '"careerline.io" <*****@gmail.com>',
    to: req.body.email,
    subject: 'Account Activation Code', 
    text: 'Active Your Account?', 
    html: output
};

transporter.sendMail(mailOptions, (error, info) => {
    if (error) {
        return console.log(error);
    }

});

显示此错误:

Invalid login: 534-5.7.14 <https://accounts.google.com/signin/continue?sarp=1&scc=1&plt=AKgnsbt4
534-5.7.14 DqB6--W6E37DHGKMSkLESmj9kIoimq8FM3LgEobNKCHtSv2GRbDOLDVRi54tPVjyqNWtEr
534-5.7.14 y8DcZsOftSNngR-DbdXPplrhmBmn1XGeQuaWaU3Yb7iItRZsQ4xx24QUsSuKK-oclhAUek
534-5.7.14 h44QuYY-pTtFsKUtfZyHrg5IxcCP4PXvW8VV5HTtRqa_Rf8dbdTvdCgrqQnzJZXtUi7mp4
534-5.7.14 ZCoioCgToVrhWCB63aSVcOnFYAtp73dIDud8RVJBEJmD9veaQL> Please log in via
534-5.7.14 your web browser and then try again

1 个答案:

答案 0 :(得分:1)

您的代码没问题。 gmail这类SMTP应用程序存在安全问题。

您必须在您的Google帐户上应用安全性较低的应用,并希望它随后能正常工作。

关注此内容:https://support.google.com/accounts/answer/6010255?hl=en

或直接允许安全性较低的应用程序:https://myaccount.google.com/lesssecureapps