在Firebase Function上完成状态代码:204,但什么也没发生



我正在开发一个向客户发送电子邮件的功能。

exports.sendRestockingNotification = functions.https.onCall((data) => {
try {
console.log("Sending confirmation email to the customer...");
sendEmailRestocking(data.numero, data.nombre, data.emails);
} catch (error) {
console.error("Unexpected error: ", error);
}
});
function sendEmailRestocking (numero, nombre, emails) {
console.log("Sending Email...");
return transport.sendMail({
from: "XXXXX <xxxxxxxxxxxxx@gmail.com>",
to: emails,
subject: "El artículo " + nombre + " (" + numero + ") vuelve a estar disponible.",
html: 
`
<div class="container rounded"  style="padding: 10px 30px;">
<div class="container rounded" style="background-color: #0bbe83;">
<h1 style="color: white; padding: 5px;">TejidosPulido</h1>
</div>
<div class="row" style="padding: 10px 50px;">
<h5 style="color: #0bbe83;">Hola, </h5>
<p>
El artículo ${nombre} (${numero}) vuelve a estar disponible. ¡Date prisa antes de que se termine!
</p>
</div>
<br>
<p style="padding: 10px 30px;"> 
Un saludo,
<br>
Tu equipo TejidosPulido
</p>
</div>
`,
});
}

但我在Firebase Functions控制台中总是收到同样的消息,并且发送了任何邮件,调试消息console.log("Sending a confirmation email to the customer...");也没有显示:

sendRestockingNotification->功能执行已启动

sendRestockingNotification->功能执行耗时14毫秒,完成状态代码:204

查看可调用云函数的文档。您需要返回可以进行JSON编码的数据。

因此,在发送响应之前,您需要等待异步sendEmailRestocking()函数终止。例如,具有以下自适应:

exports.sendRestockingNotification = functions.https.onCall(async (data) => {  // See async
try {
console.log("Sending confirmation email to the customer...");
await sendEmailRestocking(data.numero, data.nombre, data.emails);
return {result: "mail send"}; // For example
} catch (error) {
// See https://firebase.google.com/docs/functions/callable#handle_errors
console.error("Unexpected error: ", error);
}
});

相关内容

  • 没有找到相关文章

最新更新