我正在創建一個節點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