nodemailer不发送和返回错误

时间:2017-03-30 02:08:20

标签: node.js express nodemailer axios

我正在尝试使用nodemailer设置一个简单的联系表单。我所要做的就是从联系表单发送电子邮件到我的电子邮箱。我的电子邮件是“myemail@mac.com”

当我执行axios post时,我在数据对象中收到错误消息:550 5.7.0来自地址不是您的地址之一。但状态:200和statusText:“OK”

当我使用与icloud电子邮件“myemail@mac.com”相同的电子邮件时,它有效吗?我没有看到任何地方,它说你必须使用相同的地址作为服务地址?

Axios帖子:

  const request = axios.post('http://localhost:3002/send', {'name':John Doe,'email':meme@gmail.com'});
  request.then((result)=>{
      console.log("request = ", result);
  }); 

来自console.log的错误消息(“request =”,result);

error:{
 code:"EMESSAGE",
 command:"DATA",
 response:"550 5.7.0 From address is not one of your addresses.",
 responseCode:550
}

nodemailer是我的node.js

const transporter = nodemailer.createTransport({
  service: "iCloud",
  auth: {
    user: "myemail@mac.com",
    pass: "myemailpassword"
  }
})

    app.use('/send', function(req, res){
      var message = {
        from: req.body.email,
        to: 'myemail@mac.com',
        subject: 'Message From Portfolio Contact Form',
        //text: 'Plaintext version of the message',
        html: '<p>'+req.body.description+'</p>'
      };
      transporter.sendMail(message, function(error, info){
        if(error){
          res.json({error: error});
        }else{
          res.json({success: info.response});
        };
      });
    })

1 个答案:

答案 0 :(得分:0)

您使用iCloud Service配置nodemailer传输,并且您尝试使用gmail地址发送邮件。

from: req.body.email, // meme@gmail.com
to: 'myemail@mac.com'

逻辑上产生错误:

  

回复:&#34; 550 5.7.0来自地址不是您的地址之一。&#34;

你可能想做反过来。