【问题标题】:NodeJS nodemailer - IIS SMTP Virtual ServerNodeJS nodemailer - IIS SMTP 虚拟服务器
【发布时间】:2015-12-21 10:07:34
【问题描述】:

我正在尝试使用nodemailer (https://www.npmjs.com/package/nodemailer) 通过我们拥有的本地 Windows 服务器和 SMTP 虚拟服务器发送电子邮件。

SMTP 虚拟服务器工作正常,我们已经在 Classic ASP 中使用了 Jmail,将服务器名称传递给它,然后电子邮件就会发送出去。

var nodemailer = require('nodemailer');
var options = {
    host: 'SERVERNAME'
};
var transporter = nodemailer.createTransport(options);
var email = {
    from: 'no-reply@domain.co.uk',
    to: 'webmaster@domain.co.uk',
    subject: 'hello',
    text: 'hello world!'
};
var callback = function(err, info){
    if (err) { throw err }
    console.log('sent');
}
transporter.sendMail(email, callback);

我得到的错误是:

无法发送邮件 - 所有收件人均被拒绝:550 5.7.1 无法发送 为 webmaster@domain.co.uk 中继

如果我更新options 对象以包含auth,如下所示:

var options = {
    host: 'SERVERNAME',
    auth: {
        user: '...',
        pass: '...'
    }
};

我收到此错误:

无效登录:504 5.7.4 无法识别的身份验证类型

如何使用nodemailer 使用我们的 IIS SMTP 虚拟服务器发送电子邮件..?

【问题讨论】:

    标签: javascript node.js email iis nodemailer


    【解决方案1】:

    我仍然不知道为什么上面的方法不起作用,将nodemailer 指向我们的 SMTP 虚拟服务器。但是我已经解决了它。

    我们的 SMTP 虚拟服务器设置为使用我们的 Office 365 帐户,因此我更新了我的 nodemailer 代码以直接访问 Office 365,而不是通过我们的本地服务器。

    var options = {
        host: 'SMTP.office365.com',
        port: 25,
        secure: false,
        ignoreTLS: false,
        auth: {
            user: '...',
            pass: '...'
        },
        tls: {
            ciphers: 'SSLv3'
        }
    }
    

    这行得通。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-25
      • 1970-01-01
      • 2020-07-25
      • 2019-10-09
      相关资源
      最近更新 更多