BackBone js - 如何在进行AJAX调用时设置contentType?
问题描述:
在我的应用程序中 - 我进行AJAX调用来获取图像/二进制数据。BackBone js - 如何在进行AJAX调用时设置contentType?
问题是如何设置“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);
}
});
});
答
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");
}
});
+0
@ user1428716您是否管理了您的问题? – 2014-11-05 11:47:24
BTW:你的['initialize'(http://backbonejs.org/#Model-constructor)方法的定义是错误的。它应该收到固定的参数列表,其中第一个是模型**属性** – hindmost 2014-10-30 15:24:51