【发布时间】:2015-09-03 09:53:06
【问题描述】:
当尝试一个接一个地获取多个 firebase 引用时,只有最后一个请求回调被调用。
下面我试图为不同的数据获取 3 个 firebase 参考
console.log('authenticating Users');
var firebaseRef1 = new Firebase('https://stckflw.firebaseio.com/Users');
firebaseRef1.authWithCustomToken('<token>',function(error, authData){
console.log('authentication callback for Users');
} );
console.log('authenticating Messages');
var firebaseRef2 = new Firebase('https://stckflw.firebaseio.com/Messages');
firebaseRef2.authWithCustomToken('<token>',function(error, authData){
console.log('authentication callback for Messages');
} );
console.log('authenticating Emails');
var firebaseRef3 = new Firebase('https://stckflw.firebaseio.com/Emails');
firebaseRef3.authWithCustomToken('<token>',function(error, authData){
console.log('authentication callback for Emails');
} );
我看到这样的日志
验证用户身份
验证消息
验证电子邮件
电子邮件的身份验证回调
而我希望在身份验证时一个接一个地获得所有 3 个回调,所以我希望看到类似
的日志验证用户身份
验证消息
验证电子邮件
用户的身份验证回调
消息的身份验证回调
电子邮件的身份验证回调
我在这里遗漏了什么导致这种情况发生的原因吗?
我想以这样一种方式实现它,即所有回调都会在身份验证时触发,而不会丢失任何回调。
我在这里创建了一个示例http://jsfiddle.net/aniruddhbk/rvkz9mrt/4/
【问题讨论】:
-
您不能同时进行多个身份验证。这是XY Problem。这里的最终目标是什么?您可能希望使用单个令牌并设置安全规则以允许更广泛的访问,可能通过将数据添加到您可以从规则中引用的 Firebase 来使用基于角色的权限。
标签: javascript callback firebase custom-authentication