簡體   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