我已经看到了很多关于这个的问题,但令我困惑的是在
documentation的firebase x nodejs上有一个函数createuserWithEmailAndPassword().
每次我打印firebase.auth()时它只有这些功能:
{ createCustomToken: [Function],verifyIdToken: [Function],INTERNAL:{ delete: [Function],getToken: [Function],addAuthTokenListener: [Function],removeAuthTokenListener: [Function] } }
此外,在相同的nodejs文档下,firebase.auth()说:
auth(app) returns firebase.auth.Auth
Gets the Auth object for the default App or a given App.
Usage:
firebase.auth() firebase.auth(app)
所以我假设调用firebase.auth()将返回firebase.auth.Auth,它应该包含createUserWithEmailAndPassword函数.
注意
是的,我使用firebase.initializeApp()正确初始化了firebase,它运行正常,我已经在做数据库事务JSYK.
解决方法
适用于Node.js的Firebase SDK可以在两种模式下运行(从版本3.3开始):
>作为服务器端SDK,在初始化它时会发生工作服务帐户
firebase.initializeApp({ serviceAccount: "myproject-3d9889aaeddb.json",databaseURL: "https://myproject.firebaseio.com" });
如果使用服务帐户(版本3.2及之前版本中唯一可用的选项)进行初始化,则您的连接将自动作为管理员进行身份验证,并且您只能使用admin auth functionality:创建和验证自定义令牌.
>作为客户端SDK,在初始化时会发生工作API密钥
firebase.initializeApp({ apiKey: "myprojectsApiKey",databaseURL: "https://myproject.firebaseio.com" });
如果使用API密钥初始化(仅在版本3.3之后可用),您将找到client-side authentication methods可用.
它只是在我自己的项目中验证了这一点:
var firebase = require("firebase"); firebase.initializeApp({ apiKey: "AI...Sc",databaseURL: "https://stackoverflow.firebaseio.com" }); firebase.auth().createuserWithEmailAndPassword("nodeuser@firebaseui.com","firebase") .then(user => console.log(user)) .catch(error => console.error(error));
有关详细信息,请参阅this post on firebase-talk.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。