Отправка электронной почты через облачные функции Firebase - PullRequest
0 голосов
/ 05 июня 2018

У меня есть большая таблица запросов, содержащая электронную почту пользователей, и я хочу отправить им письмо по электронной почте (около 500 строк в таблице). Когда функция запускается, она отправляет электронную почту только 30-35 пользователям по истечении этого времени, если яуменьшите список до 100, он отправляет электронную почту несколько раз на один идентификатор электронной почты. Ниже приведен мой код:: bigQuery.query ({

         exports.date = functions.https.onRequest((req, res) => {
     const bigQuery = bigquery({ projectId: 'littleone-150007' });
       var someVar = [];
        var someVar1 =[];

       bigQuery.query({
   query:`Select email from table`
   useLegacySql: false
 }).then(function (rows) {
  setValue(rows);
  });
  function setValue(value) {
  someVar = value;

   //console.log(someVar); // data is printing here

   var someVar = value[0].map(function(o) { return o.email; });

//console.log(someVar); 

var i,datalength;
datalength = someVar.length;

 var emailsubj=`subject`;
 var emailbody=`newsleter body`
 for(i=0;i<datalength;i++){
     //console.log(someVar[i])
      const mailOptions = {
       from: `Madhu from Mylo <noreply@firebase.com>`,
       to: someVar[i],
       bcc: `qa@myloapp.in`
       }
       mailOptions.subject = emailsubj ;
       mailOptions.html = emailbody;
       mailTransport.sendMail(mailOptions).then(() => {
        console.log('Uninstall mail sent :', someVar[i]);

       });
       }

Что мне нужно изменить, чтобы только одно письмо попадало пользователю. ??

1 Ответ

0 голосов
/ 07 ноября 2018

Если вы храните свои электронные письма следующим образом:

var someVar = ['someemail@mail.com', 'another@mail.com'];

Вы можете сделать что-то вроде этого:

var someVar = ['client@mail.com', 'another@mail.com'];
var sendTo = someVar.join(','); 
var mailOptions = {
  from: 'truironusa@gmail.com', // sender address
  to: sendTo, // list of receivers
  subject: 'My newsletter', // Subject line
  html: '<b>content</b>', // html body
  // plain: 'Some text' // plain text
};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...