2017-08-28 10 views
0

nodemailerに1つの問題がありますが、ユーザーの電子メールからメッセージを送信しようとしますが、常にメッセージはauthに挿入された電子メールから送信されます。以下のコードでも、from:message.email作業であるため、すべての電子メールは[email protected]Nodemailerが異なるアドレスからメッセージを送信しない

var client = nodemailer.createTransport({ 
    service: 'gmail', 
    auth: { 
     user: '[email protected]', 
     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: '[email protected]', 
       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' }); 
    } 
}); 

答えて

0

から送信されたフィールドが、実際にはない「から、」「電子メールアドレスから」それは、表示名には、受信機に使用される。 authで使用されている電子メールアドレスからメールが送信されます。

たとえば、このメッセージを考えます。

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

これは私が受け取ったメールです。 enter image description here

あなたは、私がメッセージ本文に与えた、私は認証に与えたアドレスから enter image description here

ザ・がある..「AnswerQ」

開くことなどの表示名ではなく見ることができます

関連する問題