Nodemailer不从不同的地址发送消息

时间:2017-08-28 17:06:44

标签: angularjs express nodemailer

我对nodemailer有一个问题,我尝试从用户电子邮件发送邮件,但始终邮件是从我auth中插入的电子邮件发送的。在下面的代码中也没有工作from:message.email,因为每封电子邮件都是从abcd1234@gmail.com

发送的
var client = nodemailer.createTransport({ 
    service: 'gmail',
    auth: {
        user: 'abcd1234@gmail.com',
        pass: 'xyz'
    },
    tls: {rejectUnauthorized: false}
});

api.js

router.post('/contact', function(req, res){

    var message = {};

    message.username = req.body.username;
    message.email = req.body.email;
    message.contentMessage = req.body.contentMessage;

    if(req.body.username === null || req.body.username === '' || req.body.email === null || req.body.email === '' || req.body.contentMessage=== null || req.body.contentMessage === ''){
        res.json({success: false, message:'Fill form properly'})
    } else {
        var email = {
                from: message.email,
                to: 'abcd1234@gmail.com', 
                subject: 'Message sent:' + message.username,
                html: message.contentMessage + '<br>' + message.email,  
            };
        client.sendMail(email, function(err, info){
            if(err) console.log(err)
        });
        res.json({ success:true, message:'Thanks for message' });
    }
});

1 个答案:

答案 0 :(得分:0)

&#39;来自&#39;字段实际上不是来自电子邮件地址&#39;它是用于接收器的显示名称。 邮件是从身份验证中使用的电子邮件地址发送的。

例如,请考虑此消息。

 var mailOptions = {
                  from: 'AnswerQ', 
                  to: userObj.email, 
                  subject: 'Reset password '
    };  

这是我收到的邮件。 enter image description here

您可以将显示名称视为&#39; AnswerQ&#39;

打开它.. enter image description here

我在auth中提供的地址,而不是我在留言主体中提供的地址