Firebase Node.js SDK未经身份验证的访问权限

时间:2016-07-02 08:50:07

标签: node.js firebase npm

我正在尝试使用3.1.0版本中引入的新功能访问实时数据库:“Node.js SDK现在支持未经身份验证的访问。如果未提供服务帐户,则实时数据库访问将受到限制,就像任何未经身份验证的客户端一样会的。“

SDK更新为3.1.0:

user@ha:~/dev/project/auth/firebase$ sudo npm install -g firebase
[sudo] password for user:
/usr/local/lib
└─┬ firebase@3.1.0

尝试没有服务帐号:

var firebase = require('firebase');

console.log('Initialise Firebasse app');
firebase.initializeApp({
    // serviceAccount: "",
    databaseURL: "https://some-valid-firebase.firebaseio.com"
});

结果是:

user@ha:~/dev/project/auth/firebase$ nodejs fb_anon.js
Initialise Firebasse app
/home/user/dev/project/node_modules/firebase/auth-node/auth.js:61
    throw new Error('Invalid service account provided');
    ^

请帮助,可能我在这里遗漏了一些明显的东西。 : - (

1 个答案:

答案 0 :(得分:2)

正在发生的事情是您的应用程序指的是node_modules内的旧sdk版本。这就是因为您使用全局标志更新了firebase sdk,而您指的是本地sdk。

您应该将其本地安装到您的应用程序中。 首先确保您已将"firebase":"3.1.0"添加到package.json文件中,然后在同一个目录中调用npm install

我刚刚使用您添加的相同代码对其进行了测试,一切都按预期进行。

this question中,您可以在使用npm时找到一些其他信息和提示。

相关问题