zoukankan      html  css  js  c++  java
  • .net core 在服务端限制文件下载速度(传输速度)

      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相差不大

    这个不是限制的下载速度 而是文件读取速度

    这部分代码仅仅针对普通浏览器的下载。

    不包括流氓迅雷

  • 相关阅读:
    Codeforces 220C
    Codeforces 697D
    HDU 4417
    Codeforces 396C
    Codeforces 246C
    HDU 6333
    HDU 3389
    总结:树上启发式合并
    HDU 6319
    Codeforces 1009G
  • 原文地址:https://www.cnblogs.com/AnAng/p/10911281.html
Copyright © 2011-2022 走看看