我正在创建一个节点JS API(ES6),该应用使用的是谷歌Firebase的auth db等。 我试图发送客户端回应我们有一个错误,像一个无效的密码我搜索了一下,我尝试了一些人说,没有成功的东西。错误响应节点js api
编辑:
我已编辑的路线,以便它会像 现在得到的错误反应,但不与我在路由文件发送
响应文本我有:
app.route('/signin')
.post(auth.SignIn , function(req ,res) {
});
在控制器上
我:
exports.SignIn = function(req, res) {
var email = req.body.email;
var password = req.body.password;
console.log(req.body.email + " - Attempting To SignIn");
firebase.auth().signInWithEmailAndPassword(email, password).catch(function(error) {
var errorCode = error.code;
var errorMessage = error.message;
console.log(errorCode + " - " + errorMessage);
res.send(error.message);
});
console.log(email + " - Is Signed In - ");
}
在客户端上:
$("#signinform").submit(function(event) {
alert("test");
/* stop form from submitting normally */
event.preventDefault();
var formData = {
'email': $('input[name=ident]').val(),
'password': $('input[type=password]').val()
};
$.ajax({
type: 'POST',
url: "http://localhost:3000/signin",
data: formData,
success: function(res){
alert(res);
},
error: function(res){
alert(res);
}
});
});
当登录不正确,我从该行获得node.js的控制台上的错误:
console.log(errorCode + " - " + errorMessage);
如果任何人知道如何解决这个问题我会非常开心:) 谢谢。
夫妇的事情,我注意到,你是不是处理'firebase.auth()signInWithEmailAndPassword'的成功部分承诺发回'res.sendStatus (200)',从我所能看到的,你应该得到'console.log(email +“ - 被签入 - ”);'(因为它会执行它,无论登录发生什么)。 你可能会发布你收到的实际错误信息吗?可能只是一个无效的登录尝试错误 – wjvander
console.log(电子邮件+“ - 被签入 - ”);真的没关系,因为我想把错误发送回客户端,输出到节点js console的客户端,而不是客户端 的实际错误 的console.log(errorCode +“ - ”+ errorMessage);正在将其打印到节点js控制台,它将是: auth/invalid-email - 电子邮件地址格式不正确。 或类似的东西 我只是想发送这个文本回到客户端html/js页面 – user3903576