通过ajax将大文件(200多MB)上传到sharepoint 2013



我正试图通过Ajax将文件上传到sharepoin 2013上的库中。我使用以下代码:

function uploadFileee(file) {
// var file = element.files[0];
console.log(file);
var reader = new FileReader();
reader.onload = function (e) {
enviar(e.target.result, file.name);
}
reader.onerror = function (e) {
alert(e.target.error);
}
//reader.readAsArrayBuffer(file);
reader.readAsArrayBuffer(file);

function enviar(file, name) {
var url = String.format(
"{0}/_api/Web/Lists/getByTitle('{1}')/RootFolder/Files/Add(url='{2}', overwrite={3})",
_spPageContextInfo.webAbsoluteUrl, "TreinamentoLib", name, "true");
console.log(url);
jQuery.ajax({
url: url,
type: "POST",
data: file,
processData: false,
headers: {
Accept: "application/json;odata=verbose",
"X-RequestDigest": jQuery("#__REQUESTDIGEST").val()
},
success: function (data) {
console.log("sucesso");
},
error : function(err)
{
console.log("erro");
}
})
}
}

只要文件低于200兆字节,它就可以正常工作,但超过200兆字节时,浏览器就会崩溃。

区块只适用于sharepoint的在线版本。。无法在on Premise上运行。已经在C#中创建了一个webApi来接收块并将其分组并上传到库中。。

有人做过这样的事吗?有人有什么建议吗?

在SharePoint内部部署中,您可以尝试在"C:\Inetpub\wwwroot\wss\VirtualDirectories\<Virtual Directory>"文件夹的web.config文件中增加maxRequestLength="51200"executionTimeout="999999"。

或者检查web应用程序的最大上载大小:"管理中心">"应用程序管理">"管理web应用程序">选择所需的web应用程序,然后单击功能区上的"常规设置"。

最新更新