每次调用该函数时,如何使用 Cloud 函数更改我的 firebase 数据库中的实时数据?我有一个名为 Points 的数据单元格,我想在每次部署函数时将 Points 的值更改为 1 到 10 之间的随机数。我对使用 firebase 真的很陌生,所以我不知道从哪里开始。我查看了提供的大部分文档,但没有一个有帮助。我尝试了一些东西,但失败了。请帮忙
谢谢,
这是我试过的...
exports.userVerification = functions.database.ref('Points')
var ref = database().ref('Points')
var number = (Math.floor(Math.random() * 10) + 1)*10
ref.update(number)
您将在文档中找到有关如何通过 Pub/Sub 触发 Cloud Functions 的所有详细信息。
您还将在官方 Cloud Functions 示例中找到一个非常简单的“Hello World”示例:https : //github.com/firebase/functions-samples/tree/master/quickstarts/pubsub-helloworld
您的 Cloud Function 将如下所示:
const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp();
exports.randomNbr = functions.pubsub.topic('topic-name').onPublish((message) => {
var ref = admin.database().ref();
var number = Math.floor(Math.random() * (10)) + 1;
return ref.update({ Points: number });
});
注意我们返回了update()
异步方法返回的Promise ,以向平台表明工作已经完成。我建议您观看 Firebase 视频系列中关于“JavaScript Promises”的 3 个视频:https ://firebase.google.com/docs/functions/video-series/
另请注意,您不能简单地这样做ref.update(number);
:您会收到错误 ( Error: Reference.update failed: First argument must be an object containing the children to replace.
)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句