我阅读了所有关于此问题的答案,但仍然存在一些问题。可能是 .ref() 的问题,但我看不出我做错了什么。我的云功能根本没有触发。
数据库示例: 业务/{businessId}/reservations/{reservationId}
我想在每次创建新预订时触发此函数[在预订集合中创建新文档] (business/{businessId}/reservations/)。 然后我想发送一条通知消息,但那是另一回事。
const functions = require('firebase-functions');
const admin = require('firebase-admin');
exports.sendAdminNotification = functions.database
.ref("business/{businessId}/reservations")
.onWrite((event: any) => {
// It never comes here...
console.log('Here');
const payload = {
notification: {
title: 'New registration',
body: 'You have new registration!',
},
};
// You can ignore this part
admin
.messaging()
.sendToDevice('SomeToken', payload)
.catch(function (error: any) {
console.log('Notification sent failed:', error);
});
});
最佳答案
您使用术语“文档”和“集合”这一事实表明您的数据库是 Firestore。但您在这里编写的是实时数据库触发器。实时数据库是一个完全不同的数据库。相反,您需要编写 Firestore trigger反而。它们以 functions.firestore
开头。
关于javascript - Firebase onWrite 未触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61532910/