Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何从Firebase云函数调用异步函数_Javascript_Node.js_Firebase_Google Cloud Functions - Fatal编程技术网

Javascript 如何从Firebase云函数调用异步函数

Javascript 如何从Firebase云函数调用异步函数,javascript,node.js,firebase,google-cloud-functions,Javascript,Node.js,Firebase,Google Cloud Functions,我正在导出可以从iOS应用程序调用的Firebase云函数 exports.myFunction = functions.https.onCall((someData, context) => { }); 如何调用异步函数 exports.myFunction = functions.https.onCall((someData, context) => { return await someAsyncFunction(); }); 文档声明返回一个承诺,但我不确定

我正在导出可以从iOS应用程序调用的Firebase云函数

exports.myFunction = functions.https.onCall((someData, context) => {

});
如何调用异步函数

exports.myFunction = functions.https.onCall((someData, context) => {

    return await someAsyncFunction();

});
文档声明返回一个承诺,但我不确定如何将现有异步函数包装成一个我可以返回的承诺

要在异步操作后返回数据,请返回承诺。这个 promise返回的数据将发送回客户端。例如 您可以返回可调用函数写入的经过净化的文本 实时数据库:


尝试在函数前面附加async以使用wait

exports.myFunction=functions.https.onCallasyncsomeData,上下文=>{ 返回等待函数;
}; 尝试在函数前面附加async以使用wait

exports.myFunction=functions.https.onCallasyncsomeData,上下文=>{ 返回等待函数;
}; 您可以将onCall上传递的回调函数设置为异步,以便在其中使用wait:

exports.myFunction = functions.https.onCall(async (someData, context) => {
    return await someAsyncFunction();
});
或者,您可以简单地返回someAsyncFunction返回的承诺:


在任何一种情况下,您都必须返回一个承诺,该承诺与要序列化并发送到客户端应用程序的数据进行解析。这两种方法都可以做到这一点。

您可以使onCall上传递的回调函数异步,以便在其中使用wait:

exports.myFunction = functions.https.onCall(async (someData, context) => {
    return await someAsyncFunction();
});
或者,您可以简单地返回someAsyncFunction返回的承诺:

在任何一种情况下,您都必须返回一个承诺,该承诺与要序列化并发送到客户端应用程序的数据进行解析。这两种方法都可以做到这一点