Angular Firebase $createUser函数返回错误
Angular Firebase $createUser function returns error
我在这个问题上陷入了僵局。 我正在尝试使用$firebaseAuth而不是文档中建议的已弃用的FirebaseSimpleLogin创建具有AngularFire的用户。 我确定表单提交了有效的电子邮件和密码,但我在控制台中继续收到以下错误:
Error: Firebase.createUser failed: First argument must contain the key "email" with type "string"
您可以看到代码,我使用工厂服务来处理$createUser方法,这是发生错误的地方,因为一旦该方法返回,后续的 console.logs 就不会触发。 请注意,我还尝试在文档中使用样板代码,而不是在控制器和服务之间拆分它,并收到了相同的错误。 非常感谢您的帮助,谢谢!
ng-submit="register()" 在表单元素上
$scope.register = function(){
console.log($scope.user); // logs object correctly
// Authentication is passed into the controller as a dependency
Authentication.register($scope.user)
.then(function(){
//This does NOT fire
console.log("User created successfully!");
Authentication.login($scope.user);
})
.then(function(authData){
console.log("Logged in as:", authData.uid);
})
.catch(function(error) {
console.log('error');
$scope.errorMessage = error.toString();
});
};
认证工厂服务
var obj = {
register: function(user){
var obj = {email: user.email, password: user.password};
console.log(obj); // works correctly
//var auth has the reference to Firebase
return auth.$createUser(obj);
}
};
更新:只需升级到AngularFire 0.9.1或更高版本,此问题将得到解决。
更新详细信息:使用单个凭据参数(就像原始提问者所做的那样)现在是从 AngularFire 0.9.1 开始调用此参数(以及其他身份验证方法)的建议方法。下面描述的格式已被弃用,并将在即将发布的版本中删除,因此我们不建议使用它。
这是我在编写文档时的错。对于完全可以理解的混乱,我深表歉意。我想保持API与以前的AngularFire API的向后兼容,并决定让用户管理方法采用单独的参数,而不是像常规Firebase SDK那样采用参数对象。但是,文档(和示例)不能准确反映此决定。您的代码应如下所示:
auth.$createUser("test@test.com", "password").then(function() {
console.log("User created successfully!");
}).catch(function(error) {
console.log("Error:", error);
});
我会立即更新文档,但这是让您畅通无阻的答案。
我得到同样的错误。Angularfire 1.1或更高版本(在家代码)(使用Bower更新)。我正在按照教程 https://www.firebase.com/docs/web/libraries/angular/guide/user-auth.html 并使用代码来管理用户。
该代码适用于硬编码字符串,例如 user@domain.com。我又找到了解决方法。如果我将 + '' 添加到对象的参数中,则 $Auth.createUser()。我也工作。我觉得我发布的电子邮件/pwsd 文本作为 ng-model 不是字符串?
- CKFinder 3为所选文件返回错误的URL
- WebView返回错误的window.innerHeight
- 使用ajax上传的文件返回错误,但使用c#在asp.net的服务器端正常提交的文件
- DreamFactory REST API POST休息/用户/会话请求总是在IE9中返回错误
- sqlite查询返回错误-can'我不知道为什么
- Javascript返回错误的Date值(NodeJS)
- javascript getDate getMonth返回错误的月份
- 函数返回错误'令牌{'
- 为什么我在Cloud9中的http请求总是返回错误
- 当jQuery返回错误时,如何在jQuery中重新发送ajax请求
- ontouchend-ios返回错误的坐标
- node.js mongojs findOne回调返回错误为null
- jQuery Ajax+经典ASP返回错误'意外的输入结束'
- 如果URL's链接返回错误
- 时刻.js时区值返回错误的时间戳
- 简单的jquery不起作用,并返回错误
- 在回调返回错误中带有点的 JSONP
- 在页面发布到服务器并返回错误后保留 javascript 更改
- web2py服务器返回错误,但已提交查询
- Javascript错误-左移位返回错误的输出