文件上传方法及装置制造方法及图纸

技术编号:37472353 阅读:13 留言:0更新日期:2023-05-06 09:54
本发明专利技术提供一种文件上传方法及装置,方法包括:从状态数据库查找目标文件对应的多个分片的上传状态,所述状态数据库中记录有多个文件各自对应的分片的上传状态,所述目标文件属于所述多个文件;将所述多个分片中,处于上传未完成状态的目标分片,通过多线程并发上传至服务端;接收所述服务端发送的接收状态信息,并基于所述接收状态信息对所述状态数据库中所述目标分片的上传状态进行更新。本发明专利技术通过状态数据库可以获取目标文件的各个分片的上传状态并实现各分片上传状态的实时监控,从而保证在网络顺畅或网络中断的情况下,都能及时对未上传的分片进行准确上传,保证了上传的准确性且提升了传输速率。确性且提升了传输速率。确性且提升了传输速率。

【技术实现步骤摘要】
文件上传方法及装置


[0001]本专利技术涉及互联网
,尤其涉及一种文件上传方法及装置。

技术介绍

[0002]传统方式浏览器通过单通道向服务器上传文件数据,这种上传方式不支持断点续传,在传输出现网络中断,或者网络波动的情况下,会导致上传过程中断而必须重新上传文件数据,特别是在上传大文件的过程中,更容易发生中断的可能。断网后,则需要刷新页面需要重新上传文件,从而浪费用户大量的时间和流量。

技术实现思路

[0003]本专利技术提供一种文件上传方法及装置,用以解决现有技术中通过浏览器进行大文件上传时的缺陷,实现大文件的高速上传以及断点续传。
[0004]本专利技术提供一种文件上传方法,包括:
[0005]从状态数据库查找目标文件对应的多个分片的上传状态,所述状态数据库中记录有多个文件各自对应的分片的上传状态,所述目标文件属于所述多个文件;
[0006]将所述多个分片中,处于上传未完成状态的目标分片,通过多线程并发上传至服务端;
[0007]接收所述服务端发送的接收状态信息,并基于所述接收状态信息对所述状态数据库中所述目标分片的上传状态进行更新。
[0008]根据本专利技术提供的一种文件上传方法,确定所述目标文件的分片,包括:
[0009]对所述目标文件进行压缩和分片切割,得到所述目标文件对应的所述多个分片。
[0010]根据本专利技术提供的一种文件上传方法,所述基于所述服务端发送的接收状态信息对所述状态数据库中所述目标分片的上传状态进行更新,包括:
[0011]基于所述服务端发送的接收状态信息,确定所述服务器端接收到所述目标分片;
[0012]将所述状态数据库中,所述目标分片的上传未完成状态更新为上传完成状态。
[0013]根据本专利技术提供的一种文件上传方法,所述对所述状态数据库中所述目标分片的上传状态进行更新之后,还包括:
[0014]在所述目标文件对应的所述多个分片的上传状态均为上传完成状态的情况下,生成所述目标文件的第一哈希值;
[0015]向所述服务端发送所述目标文件的哈希值查询请求;
[0016]接收所述服务端发送的哈希值查询响应,所述哈希值查询响应包括所述服务端生成的所述目标文件的第二哈希值;
[0017]在确定所述第一哈希值和所述第二哈希值匹配的情况,确定所述目标文件上传成功。
[0018]根据本专利技术提供的一种文件上传方法,还包括:
[0019]在确定所述第一哈希值和所述第二哈希值不匹配的情况,将所述状态数据库中所
述目标文件对应的所述多个分片的上传状态均重置为上传未完成状态,将处于上传未完成状态的分片,通过多线程并发上传至服务端,直至重新得到的新的第一哈希值和新的第二哈希值匹配。
[0020]本专利技术还提供一种文件上传方法,包括:
[0021]通过多线程并发接收处于上传未完成状态的目标文件的多个目标分片,得到接收状态信息;
[0022]向网页端发送所述接收状态信息;
[0023]其中,所述目标文件的分片的上传状态是基于所述网页端的状态数据库确定的,所述接收状态信息用于更新所述状态数据库,所述状态数据库中记录有多个文件各自对应的分片的上传状态,所述目标文件属于所述多个文件。
[0024]根据本专利技术提供的一种文件上传方法,所述向网页端发送所述接收状态信息,之后还包括:
[0025]接收所述网页端发送的所述目标文件的哈希值查询请求;
[0026]对接收到的所述目标文件的分片进行合并和解压,得到还原后的目标文件;
[0027]基于所述哈希值查询请求,得到哈希值查询响应,所述哈希值查询响应包括所述服务端生成的所述目标文件的第二哈希值并向所述有网页端的哈希值查询响应。
[0028]本专利技术还提供一种文件上传装置,包括:
[0029]状态数据库,用于查找目标文件对应的多个分片的上传状态,所述状态数据库中记录有多个文件各自对应的分片的上传状态,所述目标文件属于所述多个文件;
[0030]第一发送模块,用于将所述多个分片中,处于上传未完成状态的目标分片,通过多线程并发上传至服务端;
[0031]第一接收模块,用于接收所述服务端发送的接收状态信息,并基于所述接收状态信息对所述状态数据库中所述目标分片的上传状态进行更新。
[0032]本专利技术还提供一种文件上传装置,包括:
[0033]第二接收模块,用于通过多线程并发接收处于上传未完成状态的目标文件的目标分片,得到接收状态信息;
[0034]第二发送模块,用于向网页端发送所述接收状态信息;
[0035]其中,所述目标文件的分片的上传状态是基于所述网页端的状态数据库确定的,所述接收状态信息用于更新所述状态数据库,所述状态数据库中记录有多个文件各自对应的分片的上传状态,所述目标文件属于所述多个文件。
[0036]本专利技术还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述文件上传方法。
[0037]本专利技术还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述文件上传方法。
[0038]本专利技术还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述文件上传方法。
[0039]本专利技术提供的一种文件上传方法及装置,在网页端创建了状态数据库,通过状态数据库可以获取目标文件的各个分片的上传状态。然后可以基于各目标分片的上传状态,
及时将处于上传未完成状态的目标分片上传至服务端。然后经由服务端返回的接收状态对状态数据库实时更新,可以实现各分片上传状态的实时监控。基于此,本专利技术可以解决网页多事务处理卡顿造成的网页崩溃,浏览器关闭刷新后的断点续传问题。同时,通过多线程并发上传,可以大大提升文件的上传传输速度。
附图说明
[0040]为了更清楚地说明本专利技术或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0041]图1是本专利技术实施例提供的文件上传方法的流程示意图之一;
[0042]图2是本专利技术实施例提供的文件上传方法的流程示意图之二;
[0043]图3是本专利技术实施例提供的本地文件上传流程示意图;
[0044]图4是本专利技术提供的文件上传装置的结构示意图之一;
[0045]图5是本专利技术提供的文件上传装置的结构示意图之二;
[0046]图6是本专利技术提供的电子设备的结构示意图。
具体实施方式
[0047]为使本专利技术的目的、技术方案和优点更加清楚,下面将结合本专利技术中的附图,对本专利技术中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种文件上传方法,其特征在于,包括:从状态数据库查找目标文件对应的多个分片的上传状态,所述状态数据库中记录有多个文件各自对应的分片的上传状态,所述目标文件属于所述多个文件;将所述多个分片中,处于上传未完成状态的目标分片,通过多线程并发上传至服务端;接收所述服务端发送的接收状态信息,并基于所述接收状态信息对所述状态数据库中所述目标分片的上传状态进行更新。2.根据权利要求1所述的文件上传方法,其特征在于,确定所述目标文件的分片,包括:对所述目标文件进行压缩和分片切割,得到所述目标文件对应的所述多个分片。3.根据权利要求1所述的文件上传方法,其特征在于,所述基于所述服务端发送的接收状态信息对所述状态数据库中所述目标分片的上传状态进行更新,包括:基于所述服务端发送的接收状态信息,确定所述服务器端接收到所述目标分片;将所述状态数据库中,所述目标分片的上传未完成状态更新为上传完成状态。4.根据权利要求3所述的文件上传方法,其特征在于,所述对所述状态数据库中所述目标分片的上传状态进行更新之后,还包括:在所述目标文件对应的所述多个分片的上传状态均为上传完成状态的情况下,生成所述目标文件的第一哈希值;向所述服务端发送所述目标文件的哈希值查询请求;接收所述服务端发送的哈希值查询响应,所述哈希值查询响应包括所述服务端生成的所述目标文件的第二哈希值;在确定所述第一哈希值和所述第二哈希值匹配的情况,确定所述目标文件上传成功。5.根据权利要求4所述的文件上传方法,其特征在于,还包括:在确定所述第一哈希值和所述第二哈希值不匹配的情况,将所述状态数据库中所述目标文件对应的所述多个分片的上传状态均重置为上传未完成状态,将处于上传未完成状态的分片,通过多线程并发上传至服务端,直至重新得到的新的第一哈希值和新的第二哈希值匹配。6.一种文件上传方法,其特征在于,包括:通过多线程并发接收处于上传未完成状态的...

【专利技术属性】
技术研发人员:谢水庚罗洪涛贺彩玲
申请(专利权)人:北京航天云路有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1