The application discloses a client-side file downloading method and device. The method is: the client sends the default number of multiple download requests to the server in turn, and downloads the target files according to multiple download requests. It includes: when the response to the last download request is a successful response to the request, the maximum undownloading of the current download progress of the target text is obtained. Interval; the subinterval of the maximum undownloaded interval in the current downloading schedule is taken as the first interval according to the preset rule; the current download request is sent to the server; the receiving server returns the request response to the current download request and the first interval corresponding to the first interval in the target file; the first write is executed. In the operation, the first write operation is to write the first interval data to the storage unit operation. The above method solves the problem of poor user experience in the downloading method of files in related technologies, and achieves the effect of enhancing user experience.
【技术实现步骤摘要】
一种客户端的文件分块下载方法和装置
本申请涉及文件下载领域,具体而言,涉及一种客户端的文件分块下载方法和装置。
技术介绍
在通过客户端下载文件时,传统的下载方式为单连接下载,而由于在某些情况下,单个连接的下载速度会受到限制,因此现有技术中,多通过分块下载的方式来实现一个文件的多连接下载,进而摆脱当前网络环境对单个连接的现在速度的限制。现有技术中实现分块下载的方法为按照固定比例将目标文件对应的数据分为多个部分,通过多个连接分别对上述多个部分的数据进行下载,全部下载结束后再将多个部分的数据进行拼接。然而,由于用户在下载文件时,目标文件大小不一,而当目标文件过大时,按照固定比例将上述目标文件对应的数据分为多个部分后,每一个部分的数据量依旧很大,进而导致在将下载数据写入磁盘时磁针的移动距离过长,导致磁盘损耗较大,同时上述每个部分的数据量越大,下载完成后将各部分数据进行拼接的时间越长。因此上述原因导致了现有技术中文件分块下载方法的用户体验不佳。针对相关技术中文件分块下载方法的用户体验不佳的问题,目前尚未提出有效的解决方案。
技术实现思路
本申请提供了一种客户端的文件分块下载方法 ...
【技术保护点】
1.一种客户端的文件分块下载方法,其特征在于,所述客户端依次向服务器发送预设数量的多个下载请求,根据所述多个下载请求对目标文件进行分块下载,所述方法包括:当接收到与上一次下载请求相对应的响应为请求成功响应时,获取目标文件的当前下载进度中最大未下载区间;根据预设规则截取所述当前下载进度中最大未下载区间的子区间作为第一区间,其中,所述第一区间为当前下载请求对应的目标文件下载区间;向服务器发送所述当前下载请求;接收所述服务器返回的与所述当前下载请求对应的请求成功响应和目标文件中与所述第一区间对应的第一区间数据;执行第一写入操作,其中,所述第一写入操作为将所述第一区间数据写入存储单 ...
【技术特征摘要】
1.一种客户端的文件分块下载方法,其特征在于,所述客户端依次向服务器发送预设数量的多个下载请求,根据所述多个下载请求对目标文件进行分块下载,所述方法包括:当接收到与上一次下载请求相对应的响应为请求成功响应时,获取目标文件的当前下载进度中最大未下载区间;根据预设规则截取所述当前下载进度中最大未下载区间的子区间作为第一区间,其中,所述第一区间为当前下载请求对应的目标文件下载区间;向服务器发送所述当前下载请求;接收所述服务器返回的与所述当前下载请求对应的请求成功响应和目标文件中与所述第一区间对应的第一区间数据;执行第一写入操作,其中,所述第一写入操作为将所述第一区间数据写入存储单元的操作;其中,所述多个下载请求中的第一个下载请求对应的目标文件下载区间默认为整个目标文件,所述第一个下载请求在下载程序开始运行时发送至所述服务器。2.根据权利要求1所述的方法,其特征在于,所述当前下载进度中最大未下载区间位于第二区间之中,所述第二区间为第二下载请求对应的目标文件下载区间,所述第二下载请求在所述当前下载请求之前发送至所述服务器,第二写入操作为将第二区间数据写入所述存储单元的操作,所述第二区间数据为所述服务器返回的与所述第二区间对应的数据;所述方法还包括:当所述第二区间数据中除所述第一区间数据外的其他数据被写入所述存储单元后,停止所述第二写入操作,同时向所述服务器发送停止信息,其中,所述停止信息用于停止所述服务器发送所述第二区间数据。3.根据权利要求1所述的方法,其特征在于,由虚拟分块列表记录所述存储单元中所述目标文件的存储进度,其中,所述虚拟分块列表为根据所述目标文件的大小来预先建立的,所述客户端从所述虚拟分块列表中获取所述目标文件的当前下载进度中最大未下载区间。4.根据权利要求2所述的方法,其特征在于,所述方法还包括:当所述多个下载请求中的任意一个结束之后,所述客户端向所述服务器发送新的下载请求,所述下载请求的总数保持不变。5.根据权利要求1所述的方法,其特征在于,根据预设规则截取所述当前下载进度中最大未下载区间的子区间作为第一区间包括:获取所述最大未下载区间的起始位置;将所述最大未下载区间的起始位置与预设偏移量相加,得到位于所述最大未下载区间的起始位置之后的偏移位置;将所述偏移位置到所述最大未下载区间的结尾位置之间的区间确定为所述第一区间。6.一种客户端的文件分块下载装置,其特征在于,所述客户端...
【专利技术属性】
技术研发人员:游枭,
申请(专利权)人:广东一一五科技股份有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。