使用AJAX请求上传文件

时间:2017-09-06 23:08:37

标签: ajax django file

我正在尝试使用AJAX上传文件。我也尝试使用formData()对象。如何将文件添加到以下Ajax请求中?

  $.ajax({ 
        url: '/api/add_new_pair/', 
        method: "POST", 
        type: 'POST', 
        FILES: { 
            'image' : file,
        },
        data: {
            'csrfmiddlewaretoken': csrftoken,
            'text': text,
        },
    }).done(function(response){
        console.log(response);
    }

1 个答案:

答案 0 :(得分:0)

  

您可以在request.FILES和request.POST中的其他数据中访问多部分(多媒体)数据(标题以及base64格式的数据)

var data = new FormData();
data.append('csrfmiddlewaretoken', '{{csrf_token}}');
data.append('image', $('#image-id').files[0]);

$.ajax({
    type: "POST",
    url: "/save_design/",
    contentType: false,
    data: data,
    async: true,
    cache: false,
    processData: false,

    beforeSend: function() {
    },

    success: function(t) {
    },

    complete: function() {
    },

    error: function(t) {}
    }), 
}