我使用dot net core 2.1,并编写了get rest文件下载api。但是有时某些服务器PC的网络区域太慢 使下载失败。详细情况是,我使用Chrome浏览器通过get api(http)下载文件。然后开始下载,但是下载会在几分钟(1分钟到1.5分钟)内失败。
下面是我的代码。 (以下内容适用于普通网络区域,但不适用于慢速区域)
[HttpGet("Download")]
public IActionResult Download(string filePath)
{
byte[] fileData = null;
System.IO.File.WriteAllBytes(filePath, datum);
string fileName = $"File.zip";
Response.ContentLength = fileData.LongLength;
return File(fileData, "application/octet-stream", fileName);
}
文件数据大小仅为20〜25MB。我已经搜索了解决方案来解决这个问题。
在web.config中添加requestTimeout =“ 00:20:00”属性
在下载网络api中设置内容长度。
Response.ContentLength = fileBinaries.LongLength;
但是不幸的是,所有这些都不适合我。 为什么会出现此问题,我该如何解决?