我已经实现了blueimps fileupload,它适用于任何大约30mb的文件。我已将maxRequestedLength设置为超过100mb,并且IIS 7设置为允许大于此的文件上载。
当上传大于30mb的文件时,它只会触发失败选项,而不会触及后面的代码。
$('#fu-my-simple-upload').fileupload({
url: '/SubmissionPortal/UploadFile',
dataType: 'json',
maxFileSize: '@ViewBag.MaxFileSize' ,
add: function (e, data) {
jqXHRData = data
},
done: function (event, data) {
alert("done");
if (data.result.isUploaded) {
$("#tbx-file-path").val("No file chosen...");
$('input[type=submit]').click();
}
else {
alert(data.result.message);
}
},
fail: function (event, data) {
if (data.files[0].error) {
alert(data.files[0].error);
}
},
progress: function (e, data) {
var progress = parseInt(data.loaded / data.total * 100, 10);
$('#progress .progress-bar').css('width', progress + '%');
}
});

我遗失或做错的任何想法?我现在已经搜索了几个小时,我找不到任何可以解释为什么它会在这种任意切断下停止工作的东西。
答案 0 :(得分:0)
在url参数尝试设置maxFileSize: 52428800 (greater than 30 mb, say 50 mb)
...
答案 1 :(得分:0)
原来我错过了IIS 7的设置。我已经为IIS 6设置了正确的设置,所以在添加以下内容之后就可以了:
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="104857600" />
</requestFiltering>
</security>
答案 2 :(得分:0)
注意您的Apache / PHP(或您使用的任何Web服务器)上载限制。尽管此库有限制,但Web服务器的限制可能会以无声的失败欺骗您。
例如,如果使用Apache和PHP,则需要编辑/etc/php5/apache2/php.ini文件(PHP如何将其自身分层到apache中)并检查变量“ memory_limit”和“ post_max_size”。确保将“ post_max_size”设置为高于此库中的块限制,并设置为“ memory_limit”。如果您不这样做,则较大的上传将默默地失败(请参阅apache日志中的内容以查看其发生情况)。