2016-08-15 61 views
1

您好,我正在使用nodemailer發送電子郵件。它在本地主機上正常工作,但在將其部署到遠程網站時不起作用。使用nodemailer發送電子郵件不在遠程工作,但在本地主機上工作

我收到以下錯誤消息時,我嘗試遠程網站上的一封電子郵件:

ERROR === { Error: Invalid sender 「<[email protected]>」 
2016-08-15T05:05:01.034175+00:00 app[web.1]:  at SMTPConnection._formatError (/app/node_modules/smtp-connection/lib/smtp-connection.js:493:15) 
2016-08-15T05:05:01.034175+00:00 app[web.1]:  at SMTPConnection._setEnvelope (/app/node_modules/smtp-connection/lib/smtp-connection.js:688:30) 
2016-08-15T05:05:01.034176+00:00 app[web.1]:  at SMTPConnection.send (/app/node_modules/smtp-connection/lib/smtp-connection.js:364:10) 
2016-08-15T05:05:01.034177+00:00 app[web.1]:  at SMTPTransport.<anonymous> (/app/node_modules/nodemailer-smtp-transport/lib/smtp-transport.js:126:24) 
2016-08-15T05:05:01.034178+00:00 app[web.1]:  at /app/node_modules/nodemailer-smtp-transport/lib/smtp-transport.js:162:21 
2016-08-15T05:05:01.034178+00:00 app[web.1]:  at SMTPConnection._actionAUTHComplete (/app/node_modules/smtp-connection/lib/smtp-connection.js:1185:5) 
2016-08-15T05:05:01.034179+00:00 app[web.1]:  at SMTPConnection.<anonymous> (/app/node_modules/smtp-connection/lib/smtp-connection.js:307:22) 
2016-08-15T05:05:01.034180+00:00 app[web.1]:  at SMTPConnection._processResponse (/app/node_modules/smtp-connection/lib/smtp-connection.js:634:16) 
2016-08-15T05:05:01.034180+00:00 app[web.1]:  at SMTPConnection._onData (/app/node_modules/smtp-connection/lib/smtp-connection.js:458:10) 



var nodemailer = require('nodemailer'); 
var transporter = nodemailer.createTransport({ 
    service: 'Mailgun', 
    auth: { 
    user: process.env.MAILGUN_USERNAME, 
    pass: process.env.MAILGUN_PASSWORD 
    } 
}); 

/** 
* 
*/ 
exports.contact = function(from, to) { 

    var mailOptions = { 
    from: from.name + ' ' + '<'+ from.email + '>', 
    to: to.email, 
    subject: from.subject || "No Subject", 
    text: from.message 
    }; 

    transporter.sendMail(mailOptions, function(err) { 
    if (err){ 
     console.log("ERROR === ", err); 
    } 
    }); 
}; 

我已訪問我的電子郵件地址,安全性較低的應用,因此,不應該成爲問題。有誰知道它爲什麼會在本地網站上運行,但不是遠程網站?

+0

一些安全檢查我限制你的SMTP服務器在發件人電子郵件域與註冊電子郵件域不匹配時發送電子郵件。 – enRaiser

+0

目前我正在使用Mailgun,我只是用本地和遠程工作的沙箱域名進行測試。我只有2個授權用戶是發送者和接收者。 – MichaelGofron

+0

那麼爲什麼發件人電子郵件ID包含gmail.com,例如[email protected] – enRaiser

回答

1
Nodemailer does not support proxies and currently there is no plan to add any support for these, sorry. 

參考 - Nodemailer Issue With Proxy

0

好吧,似乎添加括號似乎阻止nodemailer在遠程工作,即使它在本地工作。

我改變了代碼如下:

var mailOptions = { 
    from: from.email 
    to: to.email, 
    subject: from.subject || "No Subject", 
    text: from.message 
    }; 

現在它適合我的遠程服務器上發送電子郵件

相關問題