Javascript 使用云函数的推送通知不起作用

Javascript 使用云函数的推送通知不起作用,javascript,android,firebase,firebase-realtime-database,google-cloud-functions,Javascript,Android,Firebase,Firebase Realtime Database,Google Cloud Functions,我正在编写一个云函数,因此当添加新名称时,会触发通知 const functions = require('firebase-functions'); const admin = require('firebase-admin'); admin.initializeApp(); exports.pushNotification = functions.database.ref('/name/{pushId}') .onWrite(( change,context

我正在编写一个云函数,因此当添加新名称时,会触发通知

    const functions = require('firebase-functions');
    const admin = require('firebase-admin');
    admin.initializeApp();

    exports.pushNotification = functions.database.ref('/name/{pushId}')
.onWrite(( change,context) => {

    console.log('Push notification event triggered');

    const payload = {
    notification: {
    title: 'App Name',
    body: "New Vendor added",
    sound: "default"
    },

    };
    const options = {
    priority: "high",
    timeToLive: 60 * 60 * 24 //24 hours
    };

    return admin.messaging().sendToDevice("notifications", payload, options);
    })
我需要对代码进行任何更改还是需要对android应用程序进行更改?
函数将无任何错误地部署。但当我向其中添加数据时,无法观察到云功能中的日志或通知。对JS来说相对较新,我们非常感谢您的帮助。

当写入
'/name/{pushId}'
时,您的云函数会触发。但是您的JSON没有显示任何顶级的
name
键,因此函数永远不会被调用是有道理的

当数据写入
/Vendor/{pushId
时,您似乎希望触发云函数,因此您应该将触发器声明为:

exports.pushNotification = functions.database.ref('/Vendor/{pushId}')
  .onWrite(( change,context) => {
    ...


这确实是非常基本的云函数内容,但我可以想象,如果您以前从未编写过JavaScript,就很难正确编写。如果您是JavaScript新手,Firebase的云函数不是学习它的最简单方法。我建议您先阅读和/或学习。它们涵盖了许多基本的JavaScript、Web和Firebase交互。您还可以在本地Node.js进程中使用Admin SDK,该进程可以通过本地调试器进行调试。之后,您也可以更好地编写云函数的代码。

这很有效。现在我明白我犯了什么错误,我一定会仔细阅读您共享的文档。