Javascript Firebase angular$authWithOAuthRedirect
我使用Firebase和Angular和Angular fire登录OAuth 当我使用Javascript Firebase angular$authWithOAuthRedirect,javascript,angularjs,oauth,firebase,angularfire,Javascript,Angularjs,Oauth,Firebase,Angularfire,我使用Firebase和Angular和Angular fire登录OAuth 当我使用$authWithOAuthPopup时,一切正常,但传输并不总是可用,因此当我不得不回退到$authWithOAuthRedirect时,我无法让它工作 使用此代码,会发生以下情况: 执行登录(“twitter”)功能 请参阅控制台中的“检查1” 用户重定向到twitter OAuth流(url看起来像:https://api.twitter.com/oauth/authenticate?oauth_tok
$authWithOAuthPopup
时,一切正常,但传输并不总是可用,因此当我不得不回退到$authWithOAuthRedirect
时,我无法让它工作
使用此代码,会发生以下情况:
https://api.twitter.com/oauth/authenticate?oauth_token=
http://localhost:3101/##?&__firebase_request_key=
检查2
,检查3
,检查4
永远不会运行,$onAuth函数(检查5
)永远不会运行
如果我使用$authWithOAuthPopup,它将按预期工作(只要支持该传输)
authObj=$firebaseAuth new Firebase();
authObj.$onAuth(函数(authData){
控制台日志(“检查5”);
});
$scope.login=函数(提供程序){
控制台日志(“检查1”);
authObj.$authWithOAuthRedirect(提供程序)。然后(函数(authData){
控制台日志(“检查2”);
}).然后(函数(){
控制台日志(“检查3”);
}).catch(函数(err){
控制台日志(“检查4”);
});
}
我试图用另一个例子来重现这一点:。在这个重现的例子中,一切都很好。是我的应用程序中的其他东西引起了一些有趣的事情
图书馆:
authObj = $firebaseAuth new Firebase(<firebase root>);
authObj.$onAuth(function(authData){
console.log("CHECK 5");
});
$scope.login = function(provider) {
console.log("CHECK 1");
authObj.$authWithOAuthRedirect(provider).then(function(authData) {
console.log("CHECK 2");
}).then(function() {
console.log("CHECK 3");
}).catch(function(err) {
console.log("CHECK 4");
});
}