Javascript jQuery文件上传程序只发送一个块
我在Django应用程序中使用jQuery文件上传程序 我有一个问题,Django只收到我的大文件的一大块。起初我认为这可能是我的Javascript jQuery文件上传程序只发送一个块,javascript,jquery,django,file-upload,jquery-file-upload,Javascript,Jquery,Django,File Upload,Jquery File Upload,我在Django应用程序中使用jQuery文件上传程序 我有一个问题,Django只收到我的大文件的一大块。起初我认为这可能是我的UploadFileHandler的问题,但当我从上传程序记录chunksend事件时,它只触发了一次(在我的例子中是9次) 你知道为什么上传程序只发送一块吗 这是我的密码: $('#fileupload').fileupload({ dataType: 'json', maxChunkSize: 10000000,
UploadFileHandler
的问题,但当我从上传程序记录chunksend
事件时,它只触发了一次(在我的例子中是9次)
你知道为什么上传程序只发送一块吗
这是我的密码:
$('#fileupload').fileupload({
dataType: 'json',
maxChunkSize: 10000000,
add: function (e, data) {
console.log(data);
var uploadRow = $('#upload-item-master')
.clone()
.removeAttr('id')
.appendTo("#upload-container")
.hide()
.fadeIn(1000);
uploadRow.find('.name').text(data.files[0].name);
var jqXHR = data.submit()
.always(function (result, textStatus, jqXHR) {
if(result.status == 201) {
uploadRow.find('.progress .bar').css('width','100%');
uploadRow.find('.progress').removeClass('active');
} else {
uploadRow.find('.progress .bar').css('width','100%');
uploadRow.find('.progress').removeClass('progress-success');
uploadRow.find('.progress').removeClass('progress-success');
uploadRow.find('.progress').addClass('progress-danger');
}
})
},
chunksend: function(e, data) {
console.log("Chunk sent");
},
progress: function (e, data) {
var progress = parseInt(data.loaded / data.total * 100, 10);
}
});
解决方案是插件需要一个
JSON
ok,其他所有内容都将被解释为不好的内容,并且下一个块不会被发送
使用此代码
return HttpResponse(json.dumps({ 'status': 201 }), content_type="application/json")
插件将逐块发送到服务器。不幸的是,服务器-除了正确的头-将它们解释为单独的文件,并为每个块创建一个新文件。。。我为新问题创建了一个新问题。@sunrize920将标记更改为
javascript
如果将FormData()
发送到django视图会发生什么?抱歉,我不理解您的问题。但是它会影响jquery插件的行为吗?