![](/img/trans.png)
[英]How to upload more than 4MB in c# using Microsoft Graph API rest calls
[英]how to upload video bigger than 25 mb- c#, javascript
我在项目中上传视频时遇到问题。 如果File的大小约为25mb,则可以正常上传,但是如果我尝试上传较大的文件-80 mb,则会收到“失败”消息。
Web.config文件:
<httpRuntime maxRequestLength="104857600" executionTimeout="3600" />
我在查看文件中的功能:
function createVideoUploader() {
videoTempName = '@Guid.NewGuid().ToString().Replace("-", "").Substring(0, 13)';
var uploader = new qq.FileUploader({
element: document.getElementById('video-uploader'),
allowedExtensions: ['3g2', '3gp', 'avi', 'f4v', 'flv', 'm4v', 'mov', 'mp4', 'mpeg', 'mpg', 'mts', 'ogv', 'webm', 'wmv'],
sizeLimit: 838860800, //304857600,
action: '@Url.Action("Upload", "Upload")',
params: { 'fileTempName': videoTempName },
multiple: false,
onSubmit: function (id, fileName) {
$('div.qq-upload-button').hide();
$(".qq-upload-drop-area").remove();
},
onCancel: function() {
createVideoUploader();
},
onComplete: function (id, fileName, responseJSON) {
if(responseJSON.success == false) {
uploaded = false;
$("#videoUploadedFail").show(); // show video error
var postData = { 'fileTempName': videoTempName };
$.ajax({
type: 'POST',
url: '@Url.Action("DeleteTemp", "Upload")',
data: $.param(postData,true),
async: false
});
} else if(responseJSON.success == true) {
uploaded = true;
$('div.qq-upload-button').hide();
var postData = { 'fileTempName': videoTempName };
$.post("@Url.Action("PreprocessVideo", "Upload")", $.param(postData,true),
function (data) {
appendSuccess("#flowVideo");
totalTime = secsToTime(data.seconds); // seconds to time
$("#duration").html(totalTime);
$(".timeText").html(totalTime);
$("#orderSlides").css("display", "inline-block");
});
}
}
});
if (!($.browser.msie))
$('span.qq-upload-span').append(' or drop file here');
}
IIS 7+现在需要你还设置了新requestFiltering/requestLimits/maxAllowedContentLength
属性,这有一个默认值maxAllowedContentLength
的30000000
这将适合你所看到的(这大约是28.4MB)。
这应该与httpRuntime/maxRequestLength
属性结合设置,以确保IIS(通过以字节为单位的maxAllowedContentLength
)和ASP.NET(以以千字节为单位的maxRequestLength
)都一致。
您应该能够通过应用程序web.config的requestLimits元素更改此设置,以允许更合适的最大值:
<system.webServer>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="104857600" />
</requestFiltering>
</security>
</system.webServer>
不过要记住的一件事是,请求过滤是在服务器端执行的,一旦内容长度超过了限制-因此,没有什么可阻止用户尝试上传150MB的操作,只是一旦100.1MB失败,它就会失败上传。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.