未收到使用Cloud Functions发送的邮件

时间:2019-12-13 20:47:47

标签: javascript firebase firebase-realtime-database google-cloud-functions nodemailer

我在firebase中有一个实时数据库。 我的意图是,将事件添加到数据库"paso1/"的一个分支中时,将发送一封欢迎电子邮件。

我已为所有内容配置了Firebase Cloud功能,其他功能正常运行。 发送此电子邮件的功能已在firebase的“功能”部分中接收,并给出了所有正确消息。

enter image description here

但是,收件人的地址未收到该电子邮件。

我附上了我的函数的代码,因为我不知道它可能会失败。包括依赖性,当在控制台中部署时一切正常,当执行在数据库中保存新字段的android应用程序时,它已正确注册,并且该函数返回消息“状态为ok”(完成)

const functions = require('firebase-functions');
const nodemailer = require("nodemailer");

const transport = nodemailer.createTransport({
    service: "Gmail",
    auth: {
        user: "MY_EMAIL",
        pass: "MY_EMAIL_PASSWORD"
    }
})

exports.welcomeMail = functions.database.ref("paso1/{id}").onCreate((snap, context) => {
    return sendWelcomeMail ()

});

// aux functions

function sendWelcomeMail() {

    return transport.sendMail({
        from: "Sergio <test@test.com>",
        to: "destinationemail@gmail.com",
        subject: "This is a subject",
        text: "Hello my friend!"
     })
        .then(r=>r)
        .catch(e=>e);
}

我尝试使用“ paso1 / {id}”或“ paso1 / {uid}”进行了很多更改,但均未成功。

我非常感谢您获得邮件的帮助。

感谢和问候。

1 个答案:

答案 0 :(得分:0)

最后,问题是我使用的是发送电子邮件帐户的主密码,而不是Google生成的用于从第三方应用程序发送电子邮件的密码。