【发布时间】:2018-02-26 14:13:00
【问题描述】:
显然下面的代码可以正常工作,但是触发函数的执行在电子邮件发送之前很久就结束了。 不知道会不会出错。
在发送电子邮件之前延迟结束的正确方法是什么?
const mailTransport = nodemailer.createTransport({
service: "gmail",
auth: {
user: "email",
pass: "pass"
}
});
exports.createEnrollment = functions.firestore
.document("enrollments/{enrollmentId}")
.onCreate(event => {
var newValue = event.data.data();
// ... other commands to retrieve email content and recipient
mailTransport
.sendMail(content)
.then(() => {
console.log(`New email sent to ${email}`);
})
.catch(function(error) {
console.error("Error writing document: ", error);
});
console.log("ending function");
return event.data.data();
});
【问题讨论】:
-
console.logs出现了吗? -
它们出现在云功能日志中。但日志也会通知函数何时结束。
标签: javascript firebase google-cloud-functions google-cloud-firestore