Nodemailer发送电子邮件时没有错误,但我什么也没收到

时间:2017-10-03 16:46:40

标签: javascript node.js smtp gmail nodemailer

function sendMail(uid) {
    var emailRef = admin.database().ref("users/"+uid+"/email");
    emailRef.once("value", function(snapshot) {
        var email = snapshot.val();
        if (email !== null && email != undefined && email != "") {
            fs.readFile('Key/mail.json', 'utf8', function (err, data) {
                if (err) throw err;
                objMail = JSON.parse(data);
                console.log("MAIL OBJECT:"+ objMail.text);
                var transporter = nodemailer.createTransport('smtps://email%40mywebsite.com:'+objMail.text+'@smtp.gmail.com');
                var mailOptions = {
                    from: '"Notification" <notification@mywebsite.com>',
                    to: email,
                    subject: 'Notification', 
                    html: "<h1>Test</h1>"
                };

                // send mail with defined transport object
                transporter.sendMail(mailOptions, function(error, info){
                    if(error){
                        console.log("NOOOO: "+error);
                        res.send(false);
                    } 
                    else {
                        console.log("YESSS");
                        res.send(true);
                    }
                });
            });   
        }
        else {
            res.send(false);
        }
    });
}

正确打印所有值:

1)电子邮件是用户使用的正确电子邮件。

2)objMail.text是使用电子邮件地址发送电子邮件的应用程序专用密码。 (如果您不使用2FA,则可以使用不太安全的应用程序切换。)

3)最后打印“YESSSS”。

电子邮件节点制作者应该将消息发送给我控制的消息来测试包。我让它在另一个项目上工作,并且几乎根据我的知识重用了一切。

您知道是什么原因导致电子邮件无法接收/发送吗?

0 个答案:

没有答案