繁体   English   中英

如何使用 node.js 中的 nodemailer 在 email 中发送查询结果

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM