从Backbone的Model Fetch中检查404

时间:2013-03-12 16:35:27

标签: backbone.js

我有这段代码:

var quote = new kf.Models.Quote();
quote.id = id;
quote.fetch();

现在,我正在尝试做的是弄清楚如何从REST API中捕获404,如果服务器上不存在指定的引用,

有什么想法吗?

1 个答案:

答案 0 :(得分:4)

根据Backbone documentation,您可以将选项对象传递给fetch,并定义error回调:

var quote = new kf.Models.Quote();
quote.id = id;
quote.fetch({
  error: function(model, xhr, options) {
    console.log("something went wrong!");
  }
});

应该做的工作。如果您的代码只需要在Ajax调用成功时运行,您还可以定义success回调。

This other SO question定义了许多其他方法,包括定义为每个Ajax错误调用的一个函数。当出现问题时,Backbone还会触发"error"事件,因此您可以在初始化模型时绑定到该事件:

this.bind("error", someFunc);