为multipart / form-data设置Content-Type

时间:2014-08-07 20:23:33

标签: javascript jquery ajax contenttype

我正在尝试使用jQuery(和JAVA)上传图像,并且我一直收到415 Unsupported Media Type错误。后端代码期望一个Image和一个名为“params”的对象来处理图像并将其存储在服务器上。

params对象包含缩放和裁剪图像的坐标。

我需要为每个表单数据设置一个Content-Type,我不知道该怎么做。

我的代码如下:

var container = $(document).find(".resize-logo-container");
var containerX = $(container).offset().left;
var containerY = $(container).offset().top;

var image = $(document).find(".resize-logo-image");
var imageWidth = $(image).width();
var imageHeight = $(image).height();

var imageX = $(image).offset().left;
var imageY = $(image).offset().top;

var crop = new Object();
    crop.width = imageWidth;
    crop.height = imageHeight;
    crop.cropWidth = 200;
    crop.cropHeight = 200;
    crop.cropFromX = containerX - imageX;
    crop.cropFromY = containerY - imageY;

var params = JSON.stringify(crop);

var logo = $("#logo-file")[0].files[0];

var data = new FormData();
    data.append("file", logo);
    data.append("params", params);

$.ajax({
    header : {
        "Content-Type" : "multipart/form-data"
    },
    url : "SOME URL",
    data : data,
    type : "POST",
    dataType : "json",
    contentType : "multipart/form-data",
    processData: false,
    success : function(response){

    },
    error : function(){

    }
});

我明白了:

415 (Unsupported Media Type)

任何指针/帮助都将不胜感激

由于

0 个答案:

没有答案