之前公司要做一个断点续传的业务,找了许多都没有找到合适的,都是残次不全的,终于让我遇到一个基于百度的 webuploader 的断点续传。
原作者: 断点续传(上传)( https://www.somethingwhat.com/detail?id=deccc98bb1df57fc),那时候真感觉是大牛啊

然后呢,真的很好用,但是不是Net core 版本的,我又不好意思叫原作者移植一个Net core 的版本,所以,我就移植了一个Net core 的版本,思路没有变化,就是支持Net core了,希望有人能用到。

如果Net core  有更好的断点续传方式,还请告知一下。     

思路还是根据文件的md5值,作为断点续传的依据,上传文件时接口请求一下服务器上是否有上传过,如果有,则接着传;没有就从第一片开始上传。

主要是需要前端支持分片,对一个大文件进行分片。

  1. 前端用百度的webUpload 上传,断点续传的思路:根据文件的md5值去服务器上检查一下,是否有文件切片,如果有就跳过服务器上的最大片数接着传,无文件切片,则从第一片(+1)开始上传,代码截图如下:
  2. 对应的代码都注释,还是不截图了吧、

  3.  后端主要就三个主方法,1.获取指定文件的已上传的最大文件块(GetMaxChunk) 2.文件分块上传 (ChunkUpload) 3.合并文件(MergeFiles),其他方法只是进行一个简单的封装,不要让这三个方法巨大无比。

源码已经开源到github了,地址为:https://github.com/YPTopMan/FileUpload

还有一个数据库文档管理的工具:https://github.com/YPTopMan/DBManger-NetCore

再次感谢,大神的 net framework 的断点续传,太厉害了。

NetCore 上传,断点续传,可支持流上传的更多相关文章

  1. C# FTP上传下载(支持断点续传)

    <pre class="csharp" name="code"><pre class="csharp" name=&quo ...

  2. 打造 html5 文件上传组件,实现进度显示及拖拽上传,支持秒传+分片上传+断点续传,兼容IE6+及其它标准浏览器

    老早就注册了博客园帐号,昨天才发现,连博客都没开,Github也是一样,深觉惭愧,赶紧潜个水压压惊`(*∩_∩*)′ 言归正传.大概许多人都会用到文件上传的功能,上传的库貌似也不少,比如(jQuery ...

  3. edtftpj让Java上传FTP文件支持断点续传

    在用Java实现FTP上传文件功能时,特别是上传大文件的时候,可以需要这样的功能:程序在上传的过程中意外终止了,文件传了一大半,想从断掉了地方继续传:或者想做类似迅雷下载类似的功能,文件太大,今天传一 ...

  4. 支持IE低版本的上传 大文件切割上传 断点续传 秒传

    1. http://files.cnblogs.com/files/blackice/UploadDemo.rar 此demo是使用的 swfupload 2.http://download.csdn ...

  5. 表单多文件上传样式美化 && 支持选中文件后删除相关项

    开发中会经常涉及到文件上传的需求,根据业务不同的需求,有不同的文件上传情况. 有简单的单文件上传,有多文件上传,因浏览器原生的文件上传样式及功能的支持度不算太高,很多时候我们会对样式进行美化,对功能进 ...

  6. Asp.net mvc 大文件上传 断点续传

    Asp.net mvc 大文件上传 断点续传 进度条   概述 项目中需要一个上传200M-500M的文件大小的功能,需要断点续传.上传性能稳定.突破asp.net上传限制.一开始看到51CTO上的这 ...

  7. Asp.net mvc 大文件上传 断点续传 进度条

    概述 项目中需要一个上传200M-500M的文件大小的功能,需要断点续传.上传性能稳定.突破asp.net上传限制.一开始看到51CTO上的这篇文章,此方法确实很不错,能够稳定的上传大文件,http: ...

  8. java实现大文件上传分片上传断点续传

    我们平时经常做的是上传文件,上传文件夹与上传文件类似,但也有一些不同之处,这次做了上传文件夹就记录下以备后用. 这次项目的需求: 支持大文件的上传和续传,要求续传支持所有浏览器,包括ie6,ie7,i ...

  9. vue大文件上传断点续传解决方案

    之前仿造uploadify写了一个HTML5版的文件上传插件,没看过的朋友可以点此先看一下~得到了不少朋友的好评,我自己也用在了项目中,不论是用户头像上传,还是各种媒体文件的上传,以及各种个性的业务需 ...

随机推荐

  1. 微信测试号开发之四 获取access_token和jsapi_ticket

    原文:https://blog.csdn.net/qq_37936542/article/details/78549233 access_token:公众号的全局唯一接口调用凭据,公众号调用各接口时都 ...

  2. 应用:udp聊天器

    说明 在一个电脑中编写1个程序,有2个功能 1.获取键盘数据,并将其发送给对方 2.接收数据并显示 并且功能数据进行选择以上的2个功能调用 要求 实现上述程序 参考代码 import socketde ...

  3. 监控tcp,占用端口---netstat命令

    netstat命令监控tcp,占用端口等等  netstat命令是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表.实际的网络连接以及每一个网络接口设备的状态信息,语 法:netstat [ ...

  4. Spirng setter 注入简单

    1.      提供相应要注入的属性 //setter注入 public class Bean2 { private String name; private Integer age; // 提供要注 ...

  5. 《写给大忙人看的Java SE 8》——Java8新特性总结

    阅读目录 接口中的默认方法和静态方法 函数式接口和Lambda表达式 Stream API 新的日期和时间 API 杂项改进 参考资料 回到顶部 接口中的默认方法和静态方法 先考虑一个问题,如何向Ja ...

  6. OpenGL学习一

    作者:朱金灿 来源:http://blog.csdn.net/clever101 回家计划学习OpenGL开发.没有开发机子,用的是别人的笔记本,不想装庞大的VS,于是选择小巧一点的codeblock ...

  7. window.load和ready的差别

    1.运行时机: window.onload:必须等待网页所有加在完成(包含图片等),然后再运行包裹代码 $(document).ready():仅仅须要等待网页中的DOM结构载入完成.就能运行包裹的代 ...

  8. java基本数据类型练习

    package javafirst;//包名 public class JavaFirstDay { //基本数据类型的练习 public static void main(String[] args ...

  9. Tricks(四十七)—— 布尔矩阵(0-1矩阵)取反

    假定 X 是一个 0-1 元素构成的布尔矩阵,则对其取反,0 变成 1,1 变为 0(True 变为 False,False 变成 True),只需要一步简单的操作: Y = (X == False)

  10. TensorFlow 实战(四)—— tensor 的认识

    tensorflow,即是 tensor flows,在 computation graph 中 flows(流动)的不是别人,正是 tensor: 1. tensor 基本属性 tensor 的名字 ...