BackBone js - 如何在进行AJAX调用时设置内容类型?

时间:2014-10-30 09:40:27

标签: javascript jquery backbone.js

在我的应用程序中 - 我进行AJAX调用以获取图像/二进制数据。

问题是如何设置" application / octet-stream"从我的模型制作fetch()时的内容类型?

我的模特 - 我无法改变" BLA"定义。如何通过我的模型设置CONTENT TYPE?

define(function(require) {
  var bla= require("bla");
return BLA.Model.extend({
   __name__: 'xyz',
        url: function() {   
            console.log(this.attributes);
            return SOME_URL + this.get('someAttribute'); 
        },
        initialize: function(options) {
            this.options = options;            
            this.promise = this.fetch(options);
        }
    });
});

1 个答案:

答案 0 :(得分:0)

Backbone.Model.fetch使用Backbone.Sync使用$.ajax来请求远程服务器。当您致电Model.fetch(options)时,options哈希将传递给$.ajax

在您的情况下,您可以设置:

this.promise = this.fetch({ beforeSend: function (request)
            {
                request.setRequestHeader("Content-Type", "application/octet-stream");
            } 
});