尝试从另一个表获取数据,快照为空

时间:2019-06-13 04:52:40

标签: node.js firebase firebase-realtime-database

我正在尝试使用云函数从另一个表获取数据,并且告诉我快照为空。

我有一个Firebase数据库,其中连接了一些IoT设备。他们更新数据库(device_001,device_002,device_003)中各自的表(我希望这是正确的词),然后发送到我正在使用的外部API,效果很好。 现在,我需要获取设备以查找它们的位置,并设置了另一个表,每个表都包含其ID,位置和时间戳。

查询表结构:

devices
    device_001
        id: ...
        location: ...
        timestamp: ...

代码:

exports.devices_Listener = functions.database.ref('/devices/{deviceId}/{entryId}').onWrite(snapshot => { 
    object = snapshot.after.val();
    getCurrentLocation();
    process();
    return null
})

function getCurrentLocation() {    functions.database.ref('locations/{deviceId}').limitToLast(1).once('value').then(function(snapshot) {
        var o = snapshot.val();
    })
}

我希望这可以获取快照并允许我获取位置,以便可以将其与处理后的数据一起存储(所有工作都在这里进行,因此这里不包括)。 当我尝试获取位置字段时,我无法读取属性“位置” 当我尝试将快照记录到控制台时,它告诉我它为空。

在这里我看不到我做错了什么,但是我敢肯定它很小而且很简单。

感谢您抽出宝贵的时间阅读这些荒谬的烂摊子。

0 个答案:

没有答案
相关问题