2017-09-12 108 views
1

我正在使用最新版本的nodemailer 4.1.0版。我嘗試使用可在這裏 https://nodemailer.com/smtp/nodemailer和zoho電子郵件問題'530必須首先發出STARTTLS命令。'

示例代碼這裏是我的代碼

let transporter = nodemailer.createTransport({ 
     host: 'smtp.zoho.com', 
     port:587, 
     secure: false,   
     auth: { 
      user: this.user, 
      pass: this.password 
     } 
    }); 

    var mailOptions: nodemailer.SendMailOptions = { 
     from: ****@***.com, 
     to: [email protected], 
     subject: 'Hello ✔', 
     text: 'Hello world ✔', 
     html: '<b>Hello world ✔</b>' 
    }; 

    transporter 
      .sendMail(mailOptions) 
      .then(
       (info) => { 
        // console.log(info); 
        resolve({status: info.messageId}) 
       } 
      ) 
      .catch(err => { 
      // console.log(err); 
       reject({status: err.toString()}) 
      }) 

我碰到下面的錯誤。我已將安全標誌設置爲false,並且還使用了ignodeTLS。以前版本的nodemailer 0.7.1沒有任何問題。我是否錯過了任何特定的配置?

{ Error: Invalid login: 530 Must issue a STARTTLS command first. 
at SMTPConnection._formatError 
(C:\Project\NotificationService\node_modules\nodemailer\lib\smtp-connection\index.js:577:19) 
at SMTPConnection._actionAUTHComplete (C:\Project\NotificationService\node_modules\nodemailer\lib\smtp-connection\index.js:1306:34) 
at SMTPConnection._responseActions.push.str (C:\Project\NotificationService\node_modules\nodemailer\lib\smtp-connection\index.js:349:26) 
at SMTPConnection._processResponse (C:\Project\NotificationService\node_modules\nodemailer\lib\smtp-connection\index.js:733:20) 
at SMTPConnection._onData (C:\Project\NotificationService\node_modules\nodemailer\lib\smtp-connection\index.js:529:14) 
at Socket._socket.on.chunk (C:\Project\NotificationService\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:548:20) 
    code: 'EAUTH', 
    response: '530 Must issue a STARTTLS command first.', 
    responseCode: 530, 
    command: 'AUTH PLAIN' } 
+0

https://www.zoho.eu/mail/help/zoho-smtp.html 他們不似乎允許不安全的SMTP。 –

+0

謝謝@BrahmaDev我正在瀏覽打印文件並添加服務:'Zoho',以及需要TLS:錯誤,並且我將其正常工作。 –

回答

0

你也可以使用這個沒有這些tls參數的默認值是false。 你得到的錯誤,因爲你不通過服務:在nodemailer「ZOHO」

let transporter = nodemailer.createTransport({ 
     service:'Zoho', 
     host: this.service, 
     port:587, 
     secure: false, 
     auth: { 
      user: this.user, 
      pass: this.password 
     } 
    }); 
+0

謝謝@Ricky sharma –

+0

歡迎@RahulGanguly –

0

通過分型準備(「@類型/ nodemailer」)文件後添加以下標誌

1)服務: '百會'

2)的RequireTLS:假

它現在正在工作:)

let transporter = nodemailer.createTransport({ 
     service:'Zoho', 
     host: this.service, 
     port:587, 
     secure: false, 
     ignoreTLS:true, 
     requireTLS:false, 
     auth: { 
      user: this.user, 
      pass: this.password 
     } 
    }); 
相關問題