骨干 - 改变http / url请求的根(但不是骨干路由)

时间:2013-01-25 17:52:15

标签: backbone.js trigger.io backbone-routing

我有一个Web应用程序,我正在转换为trigger.io应用程序。

我试图让它作为单页应用程序工作,目前,它充满了问题。

我现在的一个问题是,这就是我们为api调用设置网址的方式:

Muse.prototype.url = function() {
  return "/answers/" + this.id + ".json";
};

显然,它将使用root(localhost)并调用

http://localhost:3000/answers/slug

但由于它是单个文件,因此调用

file:///file_path/answers/slug

哪个显然会失败。

如何在不更改骨干路径根目录的情况下使用我的定义根?

1 个答案:

答案 0 :(得分:1)

您可以覆盖sync method

var sync = Backbone.sync;
Backbone.sync = function(method, model, options) {
    options.beforeSend = function (jqXHR, settings) {
        settings.url = 'http://localhost:3000' + settings.url;
    };
    return sync(method, model, options);
};