Cloud Function根据URL参数检索值

时间:2017-04-27 23:03:40

标签: express firebase google-cloud-functions

我正在尝试在节点中编写一个Cloud Function,我可以从参数中返回一个令牌。 我使用的URL是...... https://us-central1-nmnm03.cloudfunctions.net/GetAccount?taccount=Asd

我的功能就是这个......而且错了。我怀疑我没有正确分配TT。

var functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp(functions.config().firebase);
exports.GetAccount = functions.https.onRequest((req, res) => {
        const t = admin.database().ref('/newaccout/'+req.query.account)
        const tt = t.child(token)
            res.send( "res is " + tt );
  });

req.query.account是Key。文档中的一个项目是令牌 理想情况下,我想得到像... {"令牌":" 23453458885"}

我可以获得一个节点提示吗...谢谢

2 个答案:

答案 0 :(得分:0)

虽然,我不是一个火力队的极客。从文档中可以看出,您将有两个事件可用于侦听检索子数据。您可以进一步阅读here。给定的选项用于不同的情况。请按照上述链接进行清晰查看。

在云端功能中,您可以尝试执行以下操作:

class

或者也许是这样:

const t = admin.database().ref('/newaccout/'+req.query.account)
t.on('child_added', function(data) {
  res.json({
     token: data.token
  })
})

答案 1 :(得分:0)

看起来您希望查询在t处存储的数据库引用中找到的值。不幸的是,您还没有真正执行过查询。 tt只是指向数据库中某个位置的另一个Reference对象。您应该使用Reference上的once()方法来查询数据库位置。另请注意,您使用的是名为token的变量,但尚未在代码中定义。对我来说,这看起来会给我带来错误。

通过查看一堆sample code可能会很好。