流星电子邮件成功提醒

时间:2016-12-20 09:39:42

标签: javascript email meteor bert-rpc

我正在使用Bert和Meteor Email。在我的MEteor MEthods中,我返回发送电子邮件的成功。问题是,在发送电子邮件后,它不会返回成功消息。

这是我的示例代码,

Meteor.call('sendEmail',
                data.eadd,
                'e@gmail.com',
                'Invitation',
                'test');

            return "successful.";

这是我的sendEmail函数,

sendEmail(to, from, subject, text) {
    check([to, from, subject, text], [String]);
    this.unblock();
    Email.send({
        to: to,
        from: from,
        subject: subject,
        text: text
    });
}

1 个答案:

答案 0 :(得分:1)

您的Meteor.call()需要包含回调,而您的sendEmail函数需要返回一个值。按如下方式重新排列代码:

Meteor.call('sendEmail',data.eadd,'e@gmail.com','Invitation','test',(err,result)=>{
  if (err) Bert.alert({ title: 'Error sending email: '+err, type: 'danger' });
  else Bert.alert({ title: 'Email sent!', type: 'success' })
});

sendEmail(to, from, subject, text) {
  check([to, from, subject, text], [String]);
  this.unblock();
  Email.send({
    to: to,
    from: from,
    subject: subject,
    text: text
  });
  return "successful.";  
}

注意:来自安全pov我不推荐这样一种方法,可以在客户端上指定整个电子邮件,因为你基本上创建了一个可编写脚本的开放式电子邮件中继 - 一个甚至可以由匿名用户运行。