public IActionResult GetFile() { MyFileStream readStream = new MyFileStream(@"XXX/A.XX", FileMode.Open); return new FileStreamResult(readStream, "application/octet-stream"); }
public class MyFileStream : FileStream { /// <summary> /// 速度 KB /// </summary> private int speek = 512; public MyFileStream(string path, FileMode mode) : base(path, mode) { speek = 256; } public override int Read(byte[] array, int offset, int count) { //count = 32; Thread.Sleep((int)(100/(speek/512d))); return base.Read(array,offset,count); } }
對比第一張圖片 速度和設置的256相差不大
這個不是限制的下載速度 而是文件讀取速度
這部分代碼僅僅針對普通瀏覽器的下載。
不包括流氓迅雷