繁体   English   中英

如何使用Google云功能从Firebase实时数据库中读取值?

[英]How to read a value from Firebase realtime database with a Google cloud functions?

我开始使用Firebase云功能,并且无法从数据库树中读取条目“ Hello”

在此处输入图片说明

我正在尝试从我的树中读取HANDLE / suj1 / part1中“ Hello”值。 我正在使用Firebase云功能,该功能在“ INTENT”内部的数据库中使用IOS应用程序创建另一个条目时触发。 该函数调用得很好,但是每次我尝试读取“ Hello”值时,它都会在我的Firebase控制台中返回一个空值,我希望它在其中返回“ Hello”。

这是我使用的代码:

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

exports.match = functions.database.ref('INTENT/{userid}').onCreate(snapshot => {

const user = snapshot.key


return admin.database().ref('HANDLE/suj1/part1').once('value', (snap) => {
    const hello = snap.val()
    console.log(hello) // Null
 });

有人可以告诉我我在做什么错吗?

我发现这一行和弗兰克的帮助:

admin.database().ref().once('value', (snap) => { console.log(JSON.stringify(snap.val())); });

我在路径中“ HANDLE”的末尾添加了一个空格,该空格未出现在Firebase控制台中。 我必须删除分支并创建另一个分支。

尝试这个:

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

exports.match = 
functions.database.ref('OTHERLOCATION/{userid}').onCreate((snapshot) => {
const user = snapshot.key

return admin.database().ref().child('HANDLE/suj1').once('value', function(snap) => {
const hello = snap.val().part1
console.log(hello) // "Hello"
});

请尝试这个

const userName = admin.database().ref('/HANDLE/suj1/part1').once('value',function(snapshot) {

const hello = snapshot.val();
console.log(hello);

});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM