繁体   English   中英

如何在AWS Lambda上使用nodemailer发送电子邮件

[英]How to send an email with nodemailer on AWS Lambda

我正在AWS Lambda函数中调用以下代码(带有实际的电子邮件地址和密码)。 不幸的是,我无法查看日志(我的帐户当前没有权限)。 我必须设置任何特定权限才能通过Lambda函数发送电子邮件吗? 还是有另一种/更好的方式发送和发送电子邮件?

var transporter = nodemailer.createTransport({
    service: 'gmail',
    auth: {
      user: 'source@gmail.com',
      pass: 'paswword'
    }
  });

  var mailOptions = {
    from: 'source@gmail.com',
    to: 'destination@gmail.com',
    subject: 'Sending Email using Node.js',
    text: 'That was easy!'
  };

  transporter.sendMail(mailOptions, function(error, info){
    if (error) {
      console.log(error);
    } else {
      console.log('Email sent: ' + info.response);
    }
  });

它在本地工作吗? 我将从那开始。 您的方法可能无效,因为https://www.google.com/settings/security/lesssecureapps功能已禁用。

假设您使用的是HTTP集成,如果看不到日志,则创建一个数组,而不是调用console.log ,而是将每个日志附加到该数组。 在函数结束时,我将简单地以200包含该日志的响应。

您也可以考虑使用https://aws.amazon.com/ses/ 这是基于云的电子邮件发送服务。 它与AWS Lambda搭配使用效果很好。 为了使其正常工作,您需要添加ses:SendEmail权限并通过验证过程。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM