Ber*_*lue 5 javascript node.js firebase google-cloud-functions
我正在导出一个可以从 iOS 应用程序调用的 Firebase 云函数。
exports.myFunction = functions.https.onCall((someData, context) => {
});
Run Code Online (Sandbox Code Playgroud)
如何调用异步函数?
exports.myFunction = functions.https.onCall((someData, context) => {
return await someAsyncFunction();
});
Run Code Online (Sandbox Code Playgroud)
文档指出返回一个承诺,但我不确定如何将现有的异步函数包装到我可以返回的承诺中。
https://firebase.google.com/docs/functions/callable
要在异步操作后返回数据,请返回一个 Promise。Promise 返回的数据被发送回客户端。例如,您可以返回可调用函数写入实时数据库的经过清理的文本:
尝试在函数前面附加 async 以使用 wait。
exports.myFunction = functions.https.onCall(async(someData, context) => {
return await someAsyncFunction();
});Run Code Online (Sandbox Code Playgroud)
您可以将回调函数设置为onCall异步传递,这样您就可以在其中使用await:
exports.myFunction = functions.https.onCall(async (someData, context) => {
return await someAsyncFunction();
});
Run Code Online (Sandbox Code Playgroud)
或者,您可以简单地返回由以下方法返回的承诺someAsyncFunction:
exports.myFunction = functions.https.onCall((someData, context) => {
return someAsyncFunction();
});
Run Code Online (Sandbox Code Playgroud)
无论哪种情况,您都有义务返回一个承诺,该承诺将解析数据以序列化并发送到客户端应用程序。这两种方法都可以做到这一点。
| 归档时间: |
|
| 查看次数: |
2924 次 |
| 最近记录: |