TypeError:functions.database不是函数

时间:2018-08-20 18:35:50

标签: firebase firebase-realtime-database google-cloud-functions

我想更新或创建一个对象,但是我在firebase函数的注册表上遇到此错误:“ TypeError:functions.database不是一个函数”

这是我的代码:

const functions = require('firebase-functions');

exports.actualizar = functions.https.onRequest((request, response) => {
    const obj = request.body;
    const MAC = obj.MAC;

    functions.database().ref ('/sensores/{MAC}').update(obj).promise.then(() => 
     {
       console.log("UpDate Success");
       return req.status(200).send("ok");

    })
    .catch(() => {
      functions.database.ref('/sensores'). set(obj).promise.then(() =>{
          console.log ("Created Succces");
          return req.status(200).send("");


      })
      .catch(() =>{
         console.log("Error");
         return req.status(500).send("error");

      })
    })
});

2 个答案:

答案 0 :(得分:1)

您不能使用Cloud Functions for Firebase SDK来查询数据库。它仅用于构建函数定义。要查询数据库或其他Firebase产品,您需要使用Firebase Admin SDK或通常使用的任何SDK。

例如,您会看到许多official sample code的开头,如下所示:

const admin = require('firebase-admin');  // this is the Admin SDK, not firebase-functions
admin.initializeApp();
//  Then use "admin" to reach into Realtime Database, Firestore, Cloud Storage, etc.

答案 1 :(得分:0)

TypeError在我看来就像您有空格 enter image description here