从Express JS发送自定义错误消息到Backbone

在快递js中,我有以下代码发送到骨干响应:

if (!user) { req.session.messages = [info.message]; return res.send(400, howCanIsendTheErrorMessageAlso); } 

我怎样才能发送错误信息,还有错误代码?

Backbone如何接收?

有任何想法吗?

在骨干,我有以下代码:

 loginModel.save({ username : obj.elEmail.val(), password : obj.elPassword.val(), admin : false }, { success: function (e) { console.log('success'); }, error: function (e) { console.log(e); } }); 

有任何想法吗?

你从快递发送:

 res.send(500, { error: "hi, there was an error" }); 

在Backbone中,错误callback的参数是:model,xhr,options

所以你需要从错误callback中的xhr对象中提取错误信息,如下所示:

 obj.save( { data:"something" }, { success: function(model, response, options){ console.log("worked"); }, error: function(model, xhr, options){ console.log("error", xhr.responseText); } } ); 

在您的快速应用程序(例如):

 res.send(403, { error: "some elaborate error message" }); 

你的骨干代码是正确的,你会看到错误

关于错误代码,我会build议坚持这个名单http://en.wikipedia.org/wiki/List_of_HTTP_status_codes