gpt4 book ai didi

node.js - 多个 Firebase 实例

转载 作者:搜寻专家 更新时间:2023-10-31 22:31:00 25 4
gpt4 key购买 nike

当我尝试创建多个 new Firebase(url); 实例时遇到问题。

例如:

var token1 = "c.AdASdsAsds...";
var token2 = "c.dkasdEddss...";

var v1 = new Firebase('https://developer-api.nest.com');
v1.auth(token1,function(err){
console.log("Connected 1 "+err);
},function(err){ console.log("Cancel 1: "+err); });

var v2 = new Firebase('https://developer-api.nest.com');
v2.auth(token2,function(err){
console.log("Connected 2 "+err);
},function(err){ console.log("Cancel 2 "+err); });

控制台日志:Connected 2 null 仅此而已.. 仅此而已。

所以,这意味着它永远不会从 v1.auth(); 调用回调函数,它会忽略它,看起来它会被 v2.auth(); 覆盖code> 即使它们是不同的 Firebases 实例,它也会干扰其他一切,例如 v1.child("path").on("value",function(snapshot){});v2.child("path").on("value",function(snapshot){}); 在这种情况下将不起作用。

最佳答案

您只能在使用 Firebase 身份验证的单个页面中进行一次身份验证。

来自 this page in the Firebase documentation :

All references to a Firebase share the same authentication status. So if you call new Firebase() twice and call auth() on one of them, they will both be authenticated.

当然可能是 nest-api 身份验证的工作方式不同,但我对此表示怀疑。

更新

您提供了来自 another page in the Firebase documentation 的报价:

It is not possible to authenticate with multiple credentials to the same Firebase simultaneously, even if we call .auth on different Firebase references. Authentication state is global and applies to all references to the Firebase. However, it is possible to create references to two or more different Firebases and authenticate to those independently.

但是在您的代码中,两个连接都指向同一个 Firebase:https://developer-api.nest.com .一个 Firebase => 一种身份验证状态。

关于node.js - 多个 Firebase 实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25374999/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com