使用GoDaddy设置nodemailer时出错535

时间:2017-09-15 21:10:58

标签: node.js smtp nodemailer

我想知道是否有人知道如何使用带有nodemailer的GoDaddy托管电子邮件。我的联系表单中有一个电子邮件提交框,它会触发以下脚本:

function sendEmail ( to, subject, body ) {

 var transporter = nodemailer.createTransport({
  service: 'Godaddy',
  host: "relay-hosting.secureserver.net",  
  port: 465,
  secureConnection: true,
  auth: {
    user: 'email@godaddydomain.com',
    pass: 'password'
  }
  });

var mailOptions = {
  from: 'email@godaddydomain.com',
  to: to,
  subject: subject,
  text: body
};

transporter.sendMail(mailOptions, function(error, info){
  if (error) {
    console.log(error);
  } else {
    console.log('Email sent: ' + info.response);
  }
});
}

我尝试了一些不同的选项,并确保我的端口全部开放,但我很难进行身份验证。我一直遇到这样的错误:

{ Error: Invalid login: 535 Authentication Failed for email@godaddydomain.com. User does not have any relays assigned.
    at SMTPConnection._formatError (/var/www/node/node_modules/nodemailer/lib/smtp-connection/index.js:577:19)
    at SMTPConnection._actionAUTHComplete (/var/www/node/node_modules/nodemailer/lib/smtp-connection/index.js:1306:34)
    at SMTPConnection._responseActions.push.str (/var/www/node/node_modules/nodemailer/lib/smtp-connection/index.js:349:26)
    at SMTPConnection._processResponse (/var/www/node/node_modules/nodemailer/lib/smtp-connection/index.js:733:20)
    at SMTPConnection._onData (/var/www/node/node_modules/nodemailer/lib/smtp-connection/index.js:529:14)
    at Socket._socket.on.chunk (/var/www/node/node_modules/nodemailer/lib/smtp-connection/index.js:481:47)
    at emitOne (events.js:96:13)
    at Socket.emit (events.js:188:7)
    at readableAddChunk (_stream_readable.js:176:18)
    at Socket.Readable.push (_stream_readable.js:134:10)
    at TCP.onread (net.js:547:20)
  code: 'EAUTH',
  response: '535 Authentication Failed for email@godaddydomain.com. User does not have any relays assigned.',
  responseCode: 535,
  command: 'AUTH PLAIN' }

任何想法或建议都会非常感激。

2 个答案:

答案 0 :(得分:3)

好像这个错误与主机名有关。试试这个:

var transporter2 = nodemailer.createTransport({
    service: 'Godaddy',
    host: "smtpout.secureserver.net",  
    secureConnection: true,
    port: 465
})

答案 1 :(得分:0)

我遇到了同样的错误。我将配置更改为以下内容:

 var transporter = nodemailer.createTransport({
  host: "smtpout.secureserver.net",
  secure: true,
  secureConnection: false, // TLS requires secureConnection to be false
  tls: {
    ciphers: "SSLv3",
  },
  requireTLS: true,
  port: 465,
  debug: true,
  auth: {
    user: "xxxx@yyyy.com",
    pass: "pass",
  },
});

它对我来说就像一种魅力。