Node.js Nodejs,使用Nodemailer发送电子邮件,使用Bluehost SMTP未发送,无错误

Node.js Nodejs,使用Nodemailer发送电子邮件,使用Bluehost SMTP未发送,无错误,node.js,email,smtp,Node.js,Email,Smtp,我正在尝试从我的Nodejs应用程序发送电子邮件。我用这个包裹来做这个。这是我用来发送电子邮件的代码 let smtpTransport = nodemailer.createTransport({ host: "box***.bluehost.com", port: 465, secure: true, auth: { user: <noreply@mydomain.com>, pass: <password> } })

我正在尝试从我的Nodejs应用程序发送电子邮件。我用这个包裹来做这个。这是我用来发送电子邮件的代码

let smtpTransport = nodemailer.createTransport({
   host: "box***.bluehost.com",
   port: 465,
   secure: true,
   auth: {
     user: <noreply@mydomain.com>,
     pass: <password>
   }
});

let sendResetPasswordEmail = (user, token) => {
   let mailOptions = {
       to : user.workEmail,
       subject : "Reset your password",
       text : _generateResetPasswordEmail(user, token)
   }

   smtpTransport.sendMail(mailOptions, (error, response) => {
       if(error){
           console.error(error);
       } else {
           console.log("Message sent: " + response.message);
           console.log(response);
       }
   });
}

回复中的一切似乎都很好,状态代码是250,但是toemail@somedomain.com根本不会收到这封电子邮件。此外,我在bluehost电子邮件仪表板的“已发送”列表中找不到它。可能出了什么问题。

对于您的邮件选项,您的地址中缺少。确保您的发件人地址域正确设置了必要的dkim和spf记录,否则大多数邮件接收者将向垃圾邮件发送邮件或将其完全退回

let mailOptions = {
       to : user.workEmail,
       from : "noreply@mydomain.com",
       subject : "Reset your password",
       text : _generateResetPasswordEmail(user, token)
   }

地址中缺少的邮件选项。确保您的发件人地址域正确设置了必要的dkim和spf记录,否则大多数邮件接收者将向垃圾邮件发送邮件或将其完全退回

let mailOptions = {
       to : user.workEmail,
       from : "noreply@mydomain.com",
       subject : "Reset your password",
       text : _generateResetPasswordEmail(user, token)
   }

我遇到了同样的问题。我可以通过在createTransport对象上添加name属性来解决这个问题。名称:mail.yourdomain。如果您没有看到电子邮件,请检查垃圾邮件文件夹。这是从
我希望这有帮助

我遇到了同样的问题。我可以通过在createTransport对象上添加name属性来解决这个问题。名称:mail.yourdomain。如果您没有看到电子邮件,请检查垃圾邮件文件夹。这是从
我希望这有帮助

这是我为NodeEmailer设置的中间件,它运行良好。 我正在使用Bluthost邮件服务器

const nodemailer=requirenodemailer; const config=requireconfig; const sendmail=async=>{ //使用默认SMTP传输创建可重用的传输对象 让transporter=nodeEmailer.createTransport{ 名称:mail.domain.com, 主持人:mail.domain.com, 港口:465, 安全:是的, 认证:{ 用户:config.getadminEmail, pass:config.getadminPass, }, tls:{ 拒绝:错误, }, }; transporter.verifyerr,success=>{ 如果出错{ console.logerr; }否则{ console.logServer已准备好接收我们的消息; } }; //使用定义的传输对象发送邮件 等待transporter.sendMail { 发件人:'您想要的名称',//发件人地址 致:reciever@email.com,//接收者列表 主题:你好✔, // 主题行 text:Hello world?,//纯文本正文 html:喂!有吗?,//html正文 }, 错误,响应=>{ 如果出错{ console.logError:,err; }否则{ console.logEmail发送成功:,响应; } 1.关闭; } ; }; module.exports=发送电子邮件;
这是我为NodeEmailer设置的中间件,它运行良好。 我正在使用Bluthost邮件服务器

const nodemailer=requirenodemailer; const config=requireconfig; const sendmail=async=>{ //使用默认SMTP传输创建可重用的传输对象 让transporter=nodeEmailer.createTransport{ 名称:mail.domain.com, 主持人:mail.domain.com, 港口:465, 安全:是的, 认证:{ 用户:config.getadminEmail, pass:config.getadminPass, }, tls:{ 拒绝:错误, }, }; transporter.verifyerr,success=>{ 如果出错{ console.logerr; }否则{ console.logServer已准备好接收我们的消息; } }; //使用定义的传输对象发送邮件 等待transporter.sendMail { 发件人:'您想要的名称',//发件人地址 致:reciever@email.com,//接收者列表 主题:你好✔, // 主题行 text:Hello world?,//纯文本正文 html:喂!有吗?,//html正文 }, 错误,响应=>{ 如果出错{ console.logError:,err; }否则{ console.logEmail发送成功:,响应; } 1.关闭; } ; }; module.exports=发送电子邮件;
如果邮件被退回或发送到垃圾邮件,我会得到250确定吗?通常250表示收件人服务器正在接受邮件,但由于某种原因没有将其发送给收件人。您的smtp提供程序无法看到除此之外的任何内容。但是如果它确实被反弹,你应该得到一个反弹错误代码。对于垃圾邮件,它将给出250 ok,因此您需要正确设置密钥。请在声明createTransport时尝试添加debug:true。我从bluehost smtp服务收到此邮件:220我们不授权使用此系统传输未经请求的和/或批量电子邮件。如果邮件已跳转或被发送到垃圾邮件,我是否可以获得250确定?通常250表示收件人服务器正在接受此邮件,但由于某种原因未将其发送给收件人。您的smtp提供程序无法看到除此之外的任何内容。但是如果它确实被反弹,你应该得到一个反弹错误代码。对于垃圾邮件,它将给出250 ok,因此您需要正确设置密钥。请在声明createTransport时尝试添加debug:true。我从bluehost smtp服务收到此消息:220我们不授权使用此系统传输未经请求的和/或批量电子邮件。