【问题标题】:Add mime Content-ID to request payload (AJAX)添加 mime Content-ID 以请求有效负载 (AJAX)
【发布时间】:2014-12-02 17:16:25
【问题描述】:

我需要将“<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
});

表单的第一部分“消息”应该有一个 Content-ID 标头。关于如何实现这一点的任何想法?

【问题讨论】:

    标签: javascript ajax backbone.js mime-types multipartform-data


    【解决方案1】:

    由于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
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-09-23
      • 1970-01-01
      • 1970-01-01
      • 2013-03-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多