[英]How to send a result of query in email using nodemailer in node.js
我正在制作密码恢复系统,当 email 与用户输入的 email 匹配时,我正在从数据库中获取密码。 我想通过邮件发送密码,但收到 [ERR_INVALID_ARG_TYPE] 错误。
我正在从数据库中获取结果,但由于该 arg 错误,邮件未发送。
我如何在邮件中发送该密码以及如何更正该错误?
app.post('/mail', (request, response) => {
var e = request.body.e;
console.log(e);
var password = request.body.pwd;
var sql = ` SELECT Employer_Password
FROM fyp_employers
WHERE Email_Address = ?`;
var pass= connection.query(sql, [e], function (error, results, fields) {
if(error){
console.log(error);
}
else{
var transporter = nodemailer.createTransport({
service: 'gmail',
auth: {
user: 'xyz@gmail.com',
pass: 'un3560'
}
});
var mailOptions = {
from: 'palwashanaz1@gmail.com',
to: request.body.e ,
subject: 'Okay' ,
text: results,
};
}
transporter.sendMail(mailOptions, function(error, info){
if (error) {
console.log(error);
} else {
console.log('Email sent: ' + info.response);
}
});
});
})
app.listen(3000);
您的正文应该是一个字符串,或者您可以发送 html 文件,因为邮件只是文本,您可以做的一件事是遍历数组并从数组的元素中创建一个字符串。
让文本='';
array.forEach(ele=>{
text=text+String(ele)+' ';
})
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.