一种基于golang与vue框架的文件断点续传方法与流程

文档序号:33459973发布日期:2023-03-15 03:30阅读:21来源:国知局
一种基于golang与vue框架的文件断点续传方法与流程

1.本发明涉及计算机技术领域,具体是指一种基于golang与vue框架的文件断点续传方法。


背景技术:

2.集中管理是借助现代网络通信技术,通过统一的身份认证机制,管理其关联的众多下属系统或软硬件,实现数据的实时共享,管理成本低,信息扁平化管理,权限管理实现数据分权管理等众多优点。
3.当前实现为将前端将整个文件作为数据体request_file方式传递给后端,后端接收后写入磁盘,此方式小文件且网络畅通时尚好,当文件过大或者网络超时会出现request请求超时,文件过大写入超时,写入错误,重传需要从头开始等问题,导致其他request请求卡顿,上传失败残留文件未清理。所以,一种基于golang与vue框架的文件断点续传方法成为人们亟待解决的问题。


技术实现要素:

4.本发明要解决的技术问题是提供一种的基于golang与vue框架,使文件上传下载更方便,快捷的文件断点续传方法。
5.为解决上述技术问题,本发明提供的技术方案为一种基于golang与vue框架的文件断点续传方法,包括以下步骤:
6.1)通过golang加vue构建集中管理系统,在前端提供上传界面;
7.2)前端通过将文件传入断点续传组件,获取文件信息,把文件读成arraybuffer,产生一个总文件的md5,构造唯一uuid及md5,用于通信和记录;
8.3)根据文件的大小,定义每个分片的字节数,分片存储的一个池子;
9.4)request请求,将文件总md5,切片md5,当前切片,当前是第几片,文件名,发送给后端,根据当前上传的切片数前端显示上传百分比
10.5)后端将切片写入由步骤二中uuid创建的目录中,并更新切片数据库格式;
11.6)当切片全部上传完成,根据序号将切片合并成完成文件,删除步骤五中的uuid目录切片文件,更新文件上传表状态更新为上传完成。
12.本发明与现有技术相比的优点在于:本发明通过集中管理系统的断点续传功能,实现大文件不会单个request请求数据流过大,切割成多个小文件流;不会造成request请求阻塞;解决上传失败文件残留问题,有文件清理机制及定时清理上传失败文件机制;不会造成当前服务器磁盘爆满问题,先上传请求头获取文件大小判断是否超过剩余磁盘;网络有问题导致上传失败,只需要从断点重传,不需要全部从头开始。
附图说明
13.图1是用户操作断点续传流程示意图。
14.图2是断点续传流程图。
15.图3是基于golang与vue框架的前端上传界面示意图。
16.图4是切片数据库更新后的格式图表。
具体实施方式
17.下面结合附图对本发明一种基于golang与vue框架的文件断点续传方法做进一步的详细说明。
18.1.通过golang加vue组成集中管理系统,提供上传界面;
19.2.前端通过将文件传入断点续传组件,获取文件信息,把文件读成arraybuffer,产生一个总文件的md5,构造唯一uuid及md5,用于通信和记录;
20.3.根据文件的大小,定义每个分片的字节数,分片存储的一个池子;
21.4.request请求,将文件总md5,切片md5,当前切片,当前是第几片,文件名,发送给后端,根据当前上传的切片数前端显示上传百分比;
22.5.后端将切片写入由步骤二中uuid创建的目录中,并更新切片数据库(exa_file_chunks)格式;
23.6.当切片全部上传完成,根据序号将切片合并成完成文件,删除步骤五中的uuid目录切片文件,更新文件上传表(exa_files)状态更新为上传完成;
24.7.由于网络等问题导致上传失败,可从中断位置点击继续上传,不需要全部重新上传。
25.以上对本发明及其实施方式进行了描述,这种描述没有限制性,附图中所示的也只是本发明的实施方式之一,实际的结构并不局限于此。总而言之如果本领域的普通技术人员受其启示,在不脱离本发明创造宗旨的情况下,不经创造性的设计出与该技术方案相似的结构方式及实施例,均应属于本发明的保护范围。


技术特征:
1.一种基于golang与vue框架的文件断点续传方法,其特征在于,包括以下步骤:1)通过golang加vue构建集中管理系统,在前端提供上传界面;2)前端通过将文件传入断点续传组件,获取文件信息,把文件读成arraybuffer,产生一个总文件的md5,构造唯一uuid及md5,用于通信和记录;3)根据文件的大小,定义每个分片的字节数,分片存储的一个池子;4)request请求,将文件总md5,切片md5,当前切片,当前是第几片,文件名,发送给后端,根据当前上传的切片数前端显示上传百分比5)后端将切片写入由步骤二中uuid创建的目录中,并更新切片数据库格式;6)当切片全部上传完成,根据序号将切片合并成完成文件,删除步骤五中的uuid目录切片文件,更新文件上传表状态更新为上传完成。

技术总结
本发明公开了一种基于golang与vue框架的文件断点续传方法,本发明通过集中管理系统的断点续传功能,实现大文件不会单个request请求数据流过大,切割成多个小文件流;不会造成request请求阻塞;解决上传失败文件残留问题,有文件清理机制及定时清理上传失败文件机制;不会造成当前服务器磁盘爆满问题,先上传请求头获取文件大小判断是否超过剩余磁盘;网络有问题导致上传失败,只需要从断点重传,不需要全部从头开始。全部从头开始。全部从头开始。


技术研发人员:韩宇洋
受保护的技术使用者:上海弘积信息科技有限公司
技术研发日:2022.10.17
技术公布日:2023/3/14
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1