我目前正在使用Firebase的AngularFire,并尝试使用我在facebook登录文档中找到的一些代码登录。
这是我的html代码(使用ng-click开始登录):
<a ng-click="loginWithFacebook()" class="btn btn-block btn-social btn-facebook">
这就是我的angularjs代码的样子(我已经设置了登录控制器):
var app = angular.module("loginApp", ["firebase"]);
app.controller("loginCtrl", function($scope, $firebaseObject) {
var ref = new Firebase("firebaseUrl");
$scope.loginWithFacebook = function() {
ref.authWithOAuthPopup("facebook", function(error, authData) {
if (error) {
console.log("Login Failed!", error);
alert("That didn't work");
} else {
console.log("Authenticated successfully with payload:", authData);
document.write("You're logged in!");
}
});
};
因此,当我点击时,该按钮可以工作,除了它一直给我这个错误消息:
错误:请求的方法没有可用的登录传输。 在错误(本机) 在yg(https://cdn.firebase.com/js/client/2.2.4/firebase.js:139:1271) 在https://cdn.firebase.com/js/client/2.2.4/firebase.js:160:141
我已经查看了firebase的文档,错误信息和解释非常含糊,我不知道这意味着什么。
有人能告诉我发生了什么,以及如何使用Facebook登录并调用Facebook弹出窗口?
答案 0 :(得分:1)
刚才意识到我仍然没有回答这个问题:
我实际上意识到这仅仅是因为我没有设置Web服务器来处理对Firebase的API调用,这对我来说是一个愚蠢的错误,我将把它留给未来的Firebase用户,以便他们理解您必须使用nodejs / rails或其他后端框架来处理API调用或使用Github Pages之类的东西来在线托管您的代码。