Javascript 调用google cloud函数的https函数时收到的数据为零
我正在尝试我的第一个带有谷歌云功能的应用程序。我有一个简单的javascript函数,如下所示:Javascript 调用google cloud函数的https函数时收到的数据为零,javascript,swift,google-cloud-functions,Javascript,Swift,Google Cloud Functions,我正在尝试我的第一个带有谷歌云功能的应用程序。我有一个简单的javascript函数,如下所示: exports.updateisavaiable = functions.https.onCall((data) => { const ref = admin.database().ref('/appinfo/actualversion'); ref.once("value", function (snapshot) { const actual
exports.updateisavaiable = functions.https.onCall((data) => {
const ref = admin.database().ref('/appinfo/actualversion');
ref.once("value", function (snapshot) {
const actualversion = String(snapshot.val());
const currentversion = data.currentversion;
console.log(currentversion);
console.log(actualversion);
let updateavailable;
if (actualversion > currentversion) {
updateavailable = true;
} else {
updateavailable = false;
}
console.log(updateavailable);
return(updateavailable);
});
});
当我在我的swift应用程序中使用以下代码调用此函数时,我只得到“nil”:
在控制台中,我得到了正确的值(actualversion=“0.6.3”,currentversion=“0.6.2”,UpdatesAvailable=true)
我不知道这些函数有什么问题,为什么值为零。您实际上没有设置
数据,请尝试以下操作:
return({data: updateavailable});
谢谢你的提示,但我没有工作你使用的是什么版本的firebase函数
?您可以尝试使用Postman(或类似工具)调用函数,并查看实际输出。我只能找到firebase工具的版本(V9.1.0),在哪里可以找到firebase函数的版本?如果您指的是xcode项目中的pod firebase函数,那么它是7.0.0,您可以在package.json
中找到它。感谢您提供这些信息。它是3.11.0
return({data: updateavailable});