Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Firebase云函数未发布_Firebase_Google Cloud Functions_Firebase Cloud Messaging - Fatal编程技术网

Firebase云函数未发布

Firebase云函数未发布,firebase,google-cloud-functions,firebase-cloud-messaging,Firebase,Google Cloud Functions,Firebase Cloud Messaging,我正在尝试编写一个云函数,每次创建“传感器读数”集合中的传感器读数时都会执行该函数: const admin = require('firebase-admin'); admin.initializeApp(functions.config().firebase); exports.createNotification = functions.firestore .document('sensor-readings/{sensorId}')

我正在尝试编写一个云函数,每次创建“传感器读数”集合中的传感器读数时都会执行该函数:

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


      exports.createNotification = functions.firestore
          .document('sensor-readings/{sensorId}')
          .onCreate((snap, context) => {

            const payload = {
              notification: {
                title: 'New news',
                body: "Body Test"
                }
            };

            // perform desired operations ...
          return  admin.messaging().sendToTopic("topic",payload);
          });

每次创建传感器读数时,但当我尝试使用
gcloud pubsub订阅拉取--自动确认MySub
要测试函数的结果,没有发布到主题的消息

有什么想法吗?
感谢

此代码与名为Firebase Cloud Messaging的产品配合使用,该产品用于向web和移动应用程序发送消息:

admin.messaging().sendToTopic("topic",payload);
但您的命令行正在与Google Cloud Pubsub协作,这是一个完全不同的产品:

gcloud pubsub subscriptions pull --auto-ack MySub
不能使用FCM向pubsub主题发送消息。同样,它们完全不同。而且您不能使用gcloud查看FCM消息的情况。您需要在web或移动应用程序中执行此操作


如果要向pubsub主题发送消息,应使用,而不是Firebase Admin SDK。

不相关的点:
functions.config()。Firebase
不推荐使用。使用
admin.initializeApp()”。@samthecodingman您是否介意指向显示您提到的弃用的文档?导入配置的新做法是什么?它是随着迁移到V1.0 as而删除的。值
firebase
也从
functions.config()
对象中删除,因此它解析为未定义,因此调用
admin.initializeApp(functions.config().firebase)的新代码正确调用
admin.initializeApp()
将自动从环境变量中提取所需的所有内容。如中所述,如果需要配置对象,在初始化之外/如果需要修改它,可以使用
let firebaseConfig=JSON.parse(process.env.FIREBASE\u CONFIG)