Javascript Firebase云函数-如何获取模型数据

Javascript Firebase云函数-如何获取模型数据,javascript,firebase-realtime-database,google-cloud-functions,Javascript,Firebase Realtime Database,Google Cloud Functions,我正在使用firebase云函数创建API。该API将显示模型“配置文件”的所有数据。我的代码如下,但它不工作。(无法从firebase读取文档“配置文件”) 改变 到 似乎您正在尝试将整个快照值作为响应发送,其中可能包含不兼容Json的行 const profiles = []; snapshot.forEach(function(item) { const item = item.val(); profiles.push(item); }); resp

我正在使用firebase云函数创建API。该API将显示模型“配置文件”的所有数据。我的代码如下,但它不工作。(无法从firebase读取文档“配置文件”)

改变


似乎您正在尝试将整个快照值作为响应发送,其中可能包含不兼容Json的行

const profiles = [];
snapshot.forEach(function(item) {
        const item = item.val();
        profiles.push(item);
    });
response.status(200).send(profiles);

通过这种方式,您可以返回一个对象数组,根据REST指南,它更符合JSON标准。

云函数的代码应该可以工作(在我的环境中成功测试)

您的错误可能是由于您进行了如下初始化:

admin.initializeApp(functions.config().firebase)
从1.0版开始,您应该使用以下新语法:

admin.initializeApp();

参见

“它不起作用”的含义非常广泛。什么不起作用?你对这段代码做了什么,没有得到你期望的结果?例如:当您运行
firebase deploy
时,它是否未能部署?调用函数时,它没有给出结果吗?当您调用函数时,它是否给出了错误的结果?调用函数时是否有错误?在描述问题时要具体具体,以提高有人能真正帮助你的机会。@FrankvanPuffelen谢谢你的建议。我会让这个问题更具体。@Renauld,我没有得到任何错误,尽管我在配置文件中有数据,但snapshot.val()为空。
const profiles = [];
snapshot.forEach(function(item) {
        const item = item.val();
        profiles.push(item);
    });
response.status(200).send(profiles);
admin.initializeApp(functions.config().firebase)
admin.initializeApp();