在express js中,我有以下代码向Backbone发送响应:
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);
}
});
有什么想法吗?
答案 0 :(得分:4)
您从快递发送:
res.send(500, { error: "hi, there was an error" });
在Backbone中,错误回调的参数是:model,xhr,options
因此,您需要在错误回调中的xhr对象中提取错误消息,如下所示:
obj.save(
{
data:"something"
},
{
success: function(model, response, options){
console.log("worked");
},
error: function(model, xhr, options){
console.log("error", xhr.responseText);
}
}
);
答案 1 :(得分:1)
在您的快递应用中(例如):
res.send(403, {
error: "some elaborate error message"
});
你的Backbone代码是正确的,你会看到错误
关于错误代码,我建议您坚持使用此列表http://en.wikipedia.org/wiki/List_of_HTTP_status_codes