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”。
电子邮件节点制作者应该将消息发送给我控制的消息来测试包。我让它在另一个项目上工作,并且几乎根据我的知识重用了一切。
您知道是什么原因导致电子邮件无法接收/发送吗?