2017-08-24 18 views
0

私はいくつかのプライベートホストで電子メールを送信するためにnodemailerを使用しています。ここに私のコードです:プライベートホストでNodemailerに問題があります

var transporter = nodemailer.createTransport({ 
host: "smtp.abc.net", 
secure: false, 
port: 587, 
auth: { 
    user: "[email protected]", 
    pass: "password" 
} 
}); 

それは私が証明書を追加しようとしたが、再びエラーがあったので、証明書の問題を得ていた - 私はオプションで追加

「を最初にSTARTTLSコマンドを発行しなければならない」 -

tls: { 
    rejectUnauthorized: false 
} 

それは働いた。しかし、rejectUnauthorizedをfalseに設定するのが良い方法であるかどうかはわかりません。 これにはどのような影響がありますか?これを行う別の方法がありますか?

答えて

0

「secure:true」オプションでも同じエラーが発生しますか?

var transporter = nodemailer.createTransport({ 
    host: 'poczta.o2.pl', 
    port: 465, 
    secure: true, // secure:true for port 465, secure:false for port 587 
    auth: { 
     user: process.env.MAILING_USER, 
     pass: process.env.MAILING_USER_PASSWORD 
    } 
}); 
+0

はい私はsecureにtrueを設定すると同じエラーが発生しました – Abhilasha

0

4つのオプションが追加されました:ssl、ignoreTLS、requireTLS、rejectUnauthorized。そしてそれは働いた。問題がNoSSLのようだったようです。 SSLをオフにしてTLSを追加しました。

var transporter = nodemailer.createTransport({ 
host: "example.com", 
secure: false, 
port: 587, 
ssl: false, 
ignoreTLS: false, 
requireTLS: true, 
auth: { 
    user: "[email protected]", 
    pass: "password" 
}, 
tls: { 
    secureProtocol: "TLSv1_2_method", 
    rejectUnauthorized: false 
}});