我需要将“<message>
”作为Content-ID添加到我的多部分表单的ajax请求中。我有一个非常简单的请求,使用Backbone的保存:
var data = new FormData();
data.append('message', new Blob([JSON.stringify(message.attributes)],{type: "application/json"}),'message');
data.append(document.getElementById('fileInput').files[0].name,document.getElementById('fileInput').files[0]);
message.save({},{
contentType: 'multipart/form-data',
data: data
});
表单的第一部分“message”应该有一个Content-ID标头。关于如何实现这个的任何想法?
答案 0 :(得分:0)
由于Backbone.Model.save
使用$.ajax
与服务器进行交互,您可以使用$.ajax
选项设置自定义标头。
使用headers
选项:
message.save({},{
headers: {"Content-ID": "<message>" },
contentType: 'multipart/form-data',
data: data
});
使用$ .ajax的beforeSend
回调:
message.save({},{
beforeSend: function(xhr) {
xhr.setRequestHeader("Content-ID", "<message>");
},
contentType: 'multipart/form-data',
data: data
});