https.onRequest 的 Firebase 云函数并发承诺

Firebase cloud function concurrent promises for https.onRequest

在 Firebase 云函数中,有一个对数据库引用的 set 调用,以及对另一个引用的并发 once("value") 调用,两者都是 return 承诺。在 oncethen 处理程序中还有一个 update,并且该处理程序比 update 严格执行更多操作。

现在,这是一个 https.onRequest,所以我们不能 return 承诺,例如做不到 Promise.all([p1, p2]).then(blah blah blah)。那么我们应该如何在保证异步调用完成的同时returnresponse.status(200).send(dictionary)呢?

您基本上已经说明了解决方案:

Promise.all([p1, p2]).then(blah blah blah)

传递给 Promise.all() 的承诺列表应该包含您需要等待的所有承诺。在它说 "blah blah blah" 的地方,放置一个发送结果的函数:

results => {
    response.status(200).send(dictionary)
}

可能还想使用 catch 发送错误响应,以防出现问题。

如果这不是您要查找的内容,请显示一些您实际尝试过的代码。