我有一个RESTful JSON api用于执行服务器端调用,如下所示:
Servlet.prototype.ajaxJSON = function (jobject, func, context) {
var self = this;
$.getJSON(this.name, jobject, function (json) {
...
}).fail(function(jqXHR, status, errorThrown) {
var callname = JSON.stringify(jobject).slice(1,JSON.stringify(jobject).indexOf(':'));
if(func !== null) {
func(JSON.parse('{' + callname+': {"error": "Server Error:' + errorThrown + '"}}'));
}
});
};
但是,当我尝试在我的模型中使用错误回调时:
newComment.save(null, {
'success': _.bind(function(model, response) {
...
}, this),
'error': function(model, error) {
errorAlert(error, 'Could not post comment');
}
});
出于某种原因,我正在获取我的错误参数的Backbone模型。我已经逐步完成了代码,看起来Backbone有一些自定义的错误方法可以解决所有问题。谁能告诉我这里发生了什么?谢谢!
答案 0 :(得分:0)
想出来。问题出在我的model.sync
方法上。我有一个条件来检查看起来像的错误:
if(_.isObject(json.post_comment) && json.post_comment.error) {
options.error(model, json.post_comment.error, options);
}
需要:
if(_.isObject(json.post_comment) && json.post_comment.error) {
options.error(json.post_comment.error);
}
猜猜我读错了文档。 :/