我正在为我的后端创建一个带有Firebase的React本机应用程序。Firebase身份验证用于用户创建,每当创建用户时,我还将自定义用户数据存储在实时数据库中。为此,我使用了Firebase云功能(Javascript):
exports.createCustomUser = functions.auth.user().onCreate((user) => {
const email = user.email;
const userId = user.uid;
const body = {
// The default values for a user
我尝试在Firebase上使用云函数发送推送通知。最终目标是在每次有人写入数据库/model_outputs/real_estate中的特定位置时向所有用户推送通知。我已经确认,当我在数据库中手动创建节点时,该函数将被激活。尽管如此,当它运行时,我看到了这个错误: Error: Exactly one of topic, token or condition is required
at FirebaseMessagingError.FirebaseError [as constructor] (/srv/node_modules/firebase-admin/lib/utils/e
我可以成功地从我的firebase数据库中添加和获取值。
firebase.initializeApp(config);
// Get a reference to the database service
var database = firebase.database();
var ref = database.ref();
var refer = database.ref('todo');
我的数据库中有一个待办事项列表,我想使用数组,但据我所知,firebase不喜欢数组。
因此,我只是将值添加到待办事项列表中,如下所示
function handleAddTodoIn
我正在将数据从我的android应用程序发送到一个实时的防火墙数据库。
我想检查firebase何时完成将这些项添加到数据库中,因为我将在服务器上调用一个脚本,该脚本将访问数据库中的数据(通过异步任务)。
但是在调用脚本之前,我需要确保firebase已经完成了所有项的添加,以避免数据中的任何冲突。代码应该是这样的:
myRef.child(userID).setValue(items); //add items to firebase database
new SendPostRequest().execute(); //call script on the server that wil
我编写了一个云函数,它侦听从firebase实时数据库中删除的内容。如果只有一次删除--控制台显示该项已被删除,则效果很好。
但是,如果在我的实时数据库中同时有多个删除,那么我的云功能只会被这些删除中的一个触发!我做错了什么?
下面是我的场景:我在同一个站点上打开两个浏览器选项卡。每次在每个选项卡中连接到我的web应用程序时,我都会通过push__创建一个实时数据库条目和一个引用。然后通过关闭浏览器窗口关闭两个选项卡,该窗口对我的引用调用onDelete,这将触发通过remove删除数据库上的引用--我可以确认这两个引用都已从数据库中删除。但是,只有一个删除在我的云功能中注册。
云函数
con
基于,在Firebase数据库中添加/更新/删除文档时,可以通过以下方式创建云函数以触发:
functions.database.ref('/messages/{pushId}/original').onUpdate();
但是,当我调用以下内容时,使用Node.js管理SDK:
admin.database().ref("/messages/{pushId}/original").onUpdate();
它返回错误:
TypeError: admin.database(...).ref(...).onUpdate is not a function
在云运行或