nodemailer 経由で複数の受信者にメールを送信する 質問する

nodemailer 経由で複数の受信者にメールを送信する 質問する

複数の受信者にメールを送信しようとしています。このために受信者の配列を作成しましたが、コードでは配列の最後のメール ID に 3 回しかメールを送信できません。コードの何が問題なのでしょうか?

var nodemailer = require("nodemailer");

var smtpTransport = nodemailer.createTransport(
"SMTP",{
  host: '',
  //  secureConnection: true,         // use SSL
  port: 25
});

var maillist = [
  '****.sharma3@****.com',
  '****.bussa@****.com',
  '****.gawri@****.com',
];

var msg = {
    from: "******", // sender address
    subject: "Hello ✔", // Subject line
    text: "Hello This is an auto generated Email for testing  from node please ignore it  ✔", // plaintext body
    cc: "*******"    
    //  html: "<b>Hello world ✔</b>" // html body
}


maillist.forEach(function (to, i , array) {
  msg.to = to;

  smtpTransport.sendMail(msg, function (err) {
    if (err) { 
      console.log('Sending to ' + to + ' failed: ' + err);
      return;
    } else { 
      console.log('Sent to ' + to);
    }

    if (i === maillist.length - 1) { msg.transport.close(); }
  });
});

ベストアンサー1

ノードメーラードキュメント言う:

to- To: フィールドに表示される受信者の電子メール アドレスのコンマ
cc区切りリストまたは配列 - Cc: フィールドに表示される受信者の電子メール アドレスのコンマ区切りリストまたは配列
bcc- Bcc: フィールドに表示される受信者の電子メール アドレスのコンマ区切りリストまたは配列

つまり、次のようにすればよいのです:

var maillist = [
  '****.sharma3@****.com',
  '****.bussa@****.com',
  '****.gawri@****.com',
];

var msg = {
    from: "******", // sender address
    subject: "Hello ✔", // Subject line
    text: "Hello This is an auto generated Email for testing  from node please ignore it  ✔", // plaintext body
    cc: "*******",
    to: maillist
}

おすすめ記事