asp.net-core-mvc - 无法下载大于 240 MB 的文件 ASP.NET Core 3.1,服务器返回文件 0 KB
问题描述
当通过 ASP.NET Core 3.1 应用程序和集成的 SharePoint API 下载大文件(超过 240MB)时,会出现此问题。特别有趣的是行为。在本地,每个文件都可以正常工作,但在服务器上,大文件无法成功下载。服务器返回大小为 0KB 的空文件。
已经采取了很多步骤,从添加启动类、修改下载文件操作、修改 IIS 中的设置,甚至编辑注册表编辑器。最后没有任何帮助。
public async Task<FileStreamResult> DownloadFile(string serverFileUrl, string fileName)
{
var accToken = GetToken();
var webUrl = "https://...";
var fileUrl = serverFileUrl;
var accessToken = accToken.Result.ToString();
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", accessToken);
var requestUrl = String.Format("{0}/_api/web/getfilebyserverrelativeurl('{1}')/$value", webUrl, fileUrl);
var response = await client.GetAsync(requestUrl, HttpCompletionOption.ResponseHeadersRead);
var fileContent = await response.Content.ReadAsStreamAsync();
return File(fileContent, System.Net.Mime.MediaTypeNames.Application.Octet, fileName, true);
}
}
解决方案
推荐阅读
- message-queue - 父子VI中的队列消息处理VI,其执行类型设置为预分配(?)
- android - 在 Android 中实现 Material Design 时出错
- java - Java/Apache POI - 如何更改/设置特定单元格中的字体大小?
- python - 执行 spark-submit 时的 numpy 问题
- python - “cv2.FlannBasedMatcher”对象没有属性“knnMatches”
- node.js - 切换到 API v2 时的 Dialogflow 编码问题
- angular - html中的Angular 4/5图像路径
- javascript - 如何在angularJS中使用URL下载PDF文件
- linux - postgres:无效参数:“psql”
- javascript - 在 JS 中将 12h 格式转换为 24h 格式