Traitement en cours

Veuillez attendre...

PATENTSCOPE sera indisponible durant quelques heures pour des raisons de maintenance le mardi 27.07.2021 à 12:00 PM CEST
Paramétrages

Paramétrages

Aller à Demande

1. WO2016095547 - PROCÉDÉ ET APPAREIL DE SURVEILLANCE PAR COMPTEUR DE TÉLÉCHARGEMENT DE FICHIERS

Document

说明书

发明名称

技术领域

1  

背景技术

2  

对发明的公开

技术问题

3  

技术解决方案

4   5   6   7   8   9   10   11   12   13   14   15   16   17   18   19   20   21   22   23   24   25   26   27   28   29   30   31   32   33   34   35   36   37   38   39   40   41   42   43   44   45   46   47   48   49   50   51   52   53   54   55   56   57   58   59   60   61   62   63   64   65  

有益效果

66  

附图说明

67   68   69   70   71   72   73  

本发明的实施方式

74   75   76   77   78   79   80   81   82   83   84   85   86   87   88   89   90   91   92   93   94   95   96   97   98   99   100   101   102   103   104   105   106   107   108   109   110   111  

权利要求书

1   2   3   4   5   6   7   8   9   10  

附图

页1 

说明书

发明名称 : 一种通过仪表监控文件上传的方法及装置

技术领域

技术领域

[1]
本发明涉及文件上传领域,特别涉及一种通过仪表监控文件上传的方法及装置。

背景技术

背景技术

[2]
传统的文件上传进度监控都是使用单调而简单的进度条,其文件信息(文件类型,文件大小,创建日期等提示信息)都没有以一种友好的方式展示出来,如果用户想查看文件的详细信息都很不友好;并且对文件的压缩上传,秒传,多线程上传都没有提供足够好的交互界面,给用户的体验极差。

对发明的公开

技术问题

[3]
本发明要解决的技术问题在于,针对现有技术的上述文件信息不能以友好的方式展示出来、没有足够好的交互界面、给用户的体验极差的缺陷,提供一种文件信息能以友好的方式展示出来、有足够好的交互界面、增强用户体验的通过仪表监控文件上传的方法及装置。

技术解决方案

[4]
本发明解决其技术问题所采用的技术方案是:构造一种通过仪表监控文件上传的方法,所述仪表包括用于设置参数的设置区、用于标示文件上传进度的仪表盘区、用于标示文件上传状态的文件上传成功状态区和用于标示文件信息的文件信息区,所述方法包括如下步骤:
[5]
A)用户选择要上传的文件;
[6]
B)所述仪表获取所述文件的信息,并根据所述文件的大小设定表盘的最大值,同时展示所述文件的元数据;
[7]
C)判断所述文件的大小是否小于第一设定值,如是,执行步骤D);否则,执行步骤E);
[8]
D)客户端将所述文件直接上传到服务端,并监控所述文件发送的字节来更新所述仪表盘区标示的进度,所述服务端接收完毕后返回上传成功信息,执行步骤H);
[9]
E)判断所述文件的大小是否大于第一设定值且小于第二设定值,如是,执行步骤F);否则,执行步骤G);
[10]
F)所述客户端将所述文件进行压缩后进行上传,并监控压缩文件发送的字节来更新所述仪表盘区标示的进度,所述服务端接收完毕后,对所述压缩文件进行解压,并返回上传成功信息,执行步骤H);
[11]
G)将所述文件进行分段并进行多线程上传,并根据每个分段文件发送的字节来更新所述仪表盘区标示的各个分段文件的进度,所述服务端接收完毕后,向所述客户端返回上传成功信息,执行步骤H);
[12]
H)所述客户端更新所述文件上传成功状态区的状态信息,完成文件上传。
[13]
在本发明所述的通过仪表监控文件上传的方法中,所述步骤D)进一步包括:
[14]
D1)客户端向服务端发送请求;
[15]
D2)所述客户端向所述服务端发送所述文件;
[16]
D3)所述客户端实时监控所述文件发送的字节,并更新所述仪表盘区标示的上传进度;
[17]
D4)所述服务端接收完所述文件,向所述客户端返回上传成功信息。
[18]
在本发明所述的通过仪表监控文件上传的方法中,所述步骤F)进一步包括:
[19]
F1)将文件进行压缩得到压缩文件,并向服务端发送所述压缩文件,同时更新所述仪表;
[20]
F2)客户端向所述服务端发送请求,并通知所述服务端启用压缩上传;
[21]
F3)所述服务端创建接收的临时文件,并向所述客户端返回上传路径;
[22]
F4)所述客户端接收所述上传路径后,加载所述压缩文件并将其按照所述上传路径进行上传;
[23]
F5)所述客户端监控所述压缩文件发送的字节,并更新所述仪表盘区标示的上传进度;
[24]
F6)所述服务端接收完所述压缩文件,对所述压缩文件进行解压,并向所述客户端返回上传成功信息。
[25]
在本发明所述的通过仪表监控文件上传的方法中,所述步骤G)进一步包括:
[26]
G1)对所述文件进行分段进行多线程上传,更新所述仪表;
[27]
G2)客户端向服务端发送请求,通知所述服务端启用多线程上传;
[28]
G3)所述服务端根据所述文件的大小创建多个线程及多个临时文件,并返回多个上传链接;
[29]
G4)所述客户端根据所述多个上传链接创建客户端线程,加载多个分段文件并进行上传;
[30]
G5)所述客户端监控各个分段文件发送的字节,并更新所述仪表盘区标示的多个分段文件的上传进度;
[31]
G6)所述服务端每接收完一个分段文件,向所述客户端返回上传成功信息;
[32]
G7)当所述客户端接收到所有的分段文件上传成功信息后,发送所述文件的元数据给所述服务端;
[33]
G8)当所述服务端接收到所述元数据后,对所有的分段文件进行整合,并将最终上传后的文件地址返回到所述客户端。
[34]
在本发明所述的通过仪表监控文件上传的方法中,所述第一设定值为5M,所述第二设定值为20M,所述元数据包括文件类型、文件大小和创建日期。
[35]
本发明还涉及一种实现上述仪表监控文件上传的方法的装置,所述仪表包括用于设置参数的设置区、用于标示文件上传进度的仪表盘区、用于标示文件上传状态的文件上传成功状态区和用于标示文件信息的文件信息区,所述装置包括:
[36]
文件选择单元:用于使用户选择要上传的文件;
[37]
信息获取单元:用于使所述仪表获取所述文件的信息,并根据所述文件的大小设定表盘的最大值,同时展示所述文件的元数据;
[38]
第一设定值判断单元:用于判断所述文件的大小是否小于第一设定值;
[39]
文件上传单元:用于使客户端将所述文件直接上传到服务端,并监控所述文件发送的字节来更新所述仪表盘区标示的进度,所述服务端接收完毕后返回上传成功信息;
[40]
中间值判断单元:用于判断所述文件的大小是否大于第一设定值且小于第二设定值;
[41]
压缩文件上传单元:用于使所述客户端将所述文件进行压缩后进行上传,并监控压缩文件发送的字节来更新所述仪表盘区标示的进度,所述服务端接收完毕后,对所述压缩文件进行解压,并返回上传成功信息;
[42]
分段上传单元:用于将所述文件进行分段并进行多线程上传,并根据每个分段文件发送的字节来更新所述仪表盘区标示的各个分段文件的进度,所述服务端接收完毕后,向所述客户端返回上传成功信息;
[43]
更新单元:用于使所述客户端更新所述文件上传成功状态区的状态信息,完成文件上传。
[44]
在本发明所述的实现上述仪表监控文件上传的方法的装置中,所述文件上传单元进一步包括:
[45]
请求模块:用于使客户端向服务端发送请求;
[46]
发送模块:用于使所述客户端向所述服务端发送所述文件;
[47]
监控更新模块:用于使所述客户端实时监控所述文件发送的字节,并更新所述仪表盘区标示的上传进度;
[48]
接收返回模块:用于使所述服务端接收完所述文件,向所述客户端返回上传成功信息。
[49]
在本发明所述的实现上述仪表监控文件上传的方法的装置中,所述压缩文件上传单元进一步包括:
[50]
压缩更新模块:用于将文件进行压缩得到压缩文件,并向服务端发送所述压缩文件,同时更新所述仪表;
[51]
压缩通知模块:用于使客户端向所述服务端发送请求,并通知所述服务端启用压缩上传;
[52]
临时文件创建模块:用于使所述服务端创建接收的临时文件,并向所述客户端返回上传路径;
[53]
压缩文件加载模块:用于使所述客户端接收所述上传路径后,加载所述压缩文件并将其按照所述上传路径进行上传;
[54]
压缩文件发送模块:用于使所述客户端监控所述压缩文件发送的字节,并更新所述仪表盘区标示的上传进度;
[55]
解压模块:用于使所述服务端接收完所述压缩文件,对所述压缩文件进行解压,并向所述客户端返回上传成功信息。
[56]
在本发明所述的实现上述仪表监控文件上传的方法的装置中,所述分段上传单元进一步包括:
[57]
多线程上传模块:用于对所述文件进行分段进行多线程上传,更新所述仪表;
[58]
多线程通知模块:用于使客户端向服务端发送请求,通知所述服务端启用多线程上传;
[59]
多线程创建模块:用于使所述服务端根据所述文件的大小创建多个线程及多个临时文件,并返回多个上传链接;
[60]
分段文件加载模块:用于使所述客户端根据所述多个上传链接创建客户端线程,加载多个分段文件并进行上传;
[61]
分段文件监控模块:用于使所述客户端监控各个分段文件发送的字节,并更新所述仪表盘区标示的多个分段文件的上传进度;
[62]
分段文件接收返回模块:用于使所述服务端每接收完一个分段文件,向所述客户端返回上传成功信息;
[63]
元数据发送模块:用于当所述客户端接收到所有的分段文件上传成功信息后,发送所述文件的元数据给所述服务端;
[64]
整合模块:用于当所述服务端接收到所述元数据后,对所有的分段文件进行整合,并将最终上传后的文件地址返回到所述客户端。
[65]
在本发明所述的实现上述仪表监控文件上传的方法的装置中,所述第一设定值为5M,所述第二设定值为20M,所述元数据包括文件类型、文件大小和创建日期。

有益效果

[66]
实施本发明的通过仪表监控文件上传的方法及装置,具有以下有益效果:由于仪表包括用于设置参数的设置区、用于标示文件上传进度的仪表盘区、用于标示文件上传状态的文件上传成功状态区和用于标示文件信息的文件信息区,这样用户可以直观地通过仪表盘区看到文件上传的进度,通过文件信息区预览文件信息,通过文件上传成功状态区能看到文件上传成功信息,所以文件信息能以友好的方式展示出来、有足够好的交互界面、增强用户体验。

附图说明

[67]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[68]
图1为本发明通过仪表监控文件上传的方法及装置一个实施例中方法的流程图;
[69]
图2为所述实施例中仪表的结构示意图;
[70]
图3为所述实施例中客户端将文件直接上传到服务端,并监控文件发送的字节来更新仪表盘区标示的进度,服务端接收完毕后返回上传成功信息的具体流程图;
[71]
图4为所述实施例中客户端将文件进行压缩后进行上传,并监控压缩文件发送的字节来更新仪表盘区标示的进度,服务端接收完毕后,对压缩文件进行解压,并返回上传成功信息的具体流程图;
[72]
图5为所述实施例中将文件进行分段并进行多线程上传,并根据每个分段文件发送的字节来更新仪表盘区标示的各个分段文件的进度,服务端接收完毕后,向客户端返回上传成功信息的具体流程图;
[73]
图6为所述实施例中装置的结构示意图。

本发明的实施方式

[74]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[75]
在本发明通过仪表监控文件上传的方法及装置实施例中,其通过仪表监控文件上传的方法的流程图如图1所示。图2为本实施例中仪表的结构示意图。图2中,该仪表包括设置区、仪表盘区、文件上传成功状态区和文件信息区,其中,设置区用于设置参数,仪表盘区用于标示文件上传进度,文件上传成功状态区用于标示文件上传状态,文件信息区用于标示文件信息。图1中,该通过仪表监控文件上传的方法包括如下步骤:
[76]
步骤S01用户选择要上传的文件:本步骤中,用户选择要上传的文件。
[77]
步骤S02仪表获取文件的信息,并根据文件的大小设定表盘的最大值,同时展示文件的元数据:本步骤中,仪表获取要上传文件的信息,并根据该文件的大小设定表盘的最大值,同时展示该文件的元数据。文件的元数据包括文件类型、文件大小和创建日期等等。值得一提的是,文件的大小不同,其设定的表盘的最大值也不同。
[78]
步骤S03 判断文件的大小是否小于第一设定值:本步骤中,判断文件的大小是否小于第一设定值,如果判断的结果为是,则执行步骤S04;否则,执行步骤S05。值得一提的是,本实施例中,第一设定值为5M。当然,在本实施例的一些情况下,可以根据具体情况来调整第一设定值的大小。
[79]
步骤S04 客户端将文件直接上传到服务端,并监控文件发送的字节来更新仪表盘区标示的进度,服务端接收完毕后返回上传成功信息:如果上述步骤S03的判断结果为是,则执行本步骤。本步骤中,客户端将文件直接上传到服务端,在上传的过程中,客户端监控文件发送的字节,并实时更新仪表盘区标示的进度,当服务端接收完文件后,向客户端返回文件上传成功的信息。执行完本步骤,执行步骤S08。
[80]
步骤S05 判断文件的大小是否大于第一设定值且小于第二设定值:如果上述步骤S03的判断结果为否,则执行本步骤。本步骤中,判断文件的大小是否大于第一设定值且小于第二设定值,如果判断的结果为是,则执行步骤S06,否则,执行步骤S07。值得一提的是,本实施例中,第二设定值为20M,当然,在本实施例的一些情况下,第二设定值的大小也可以根据具体情况进行相应调整。
[81]
步骤S06 客户端将文件进行压缩后进行上传,并监控压缩文件发送的字节来更新仪表盘区标示的进度,服务端接收完毕后,对压缩文件进行解压,并返回上传成功信息:如果上述步骤S05的判断结果为是,则执行本步骤。本步骤中,客户端将文件进行压缩,并将压缩文件进行上传,同时客户端监控压缩文件发送的字节来实时更新仪表盘区标示的进度,服务端接收完毕后,对压缩文件进行解压,并向客户端返回上传成功信息。执行完本步骤,执行步骤S08。
[82]
步骤S07 将文件进行分段并进行多线程上传,并根据每个分段文件发送的字节来更新仪表盘区标示的各个分段文件的进度,服务端接收完毕后,向客户端返回上传成功信息:如果上述步骤S05的判断结果为否,则执行本步骤。本步骤中,将文件进行分段得到多个分段文件,并进行多线程上传,同时根据每个分段文件发送的字节来更新仪表盘区标示的各个分段文件的进度,服务端接收完毕后,向客户端返回上传成功信息。执行完本步骤,执行步骤S08。
[83]
步骤S08客户端更新文件上传成功状态区的状态信息,完成文件上传:本步骤中,在客户端更新仪表中文件上传成功状态区的状态信息,使其显示文件上传成功的信息,这样就完成了文件的上传。通过使用仪表,这样用户可以直观地通过仪表盘区看到文件上传的进度,通过文件信息区预览文件信息,通过文件上传成功状态区能看到文件上传成功信息,所以文件信息能以友好的方式展示出来、有足够好的交互界面、增强用户体验。
[84]
对于本实施例而言,上述步骤S04还可进一步细化,其细化后的流程图如图3所示。图3中,上述步骤S04进一步包括:
[85]
步骤S41客户端向服务端发送请求:本步骤中,客户端向服务端发送请求。
[86]
步骤S42 客户端向服务端发送文件:本步骤中,客户端向服务端发送上述选择的文件。
[87]
步骤S43 客户端实时监控文件发送的字节,并更新仪表盘区标示的上传进度:本步骤中,客户端实时监控文件已发送的字节,然后根据文件已发送的字节,实时更新仪表盘区所标示的文件的上传进度。这样,用户可以实时看到文件上传的进度,给用户提供更好的体验。
[88]
步骤S44 服务端接收完文件,向客户端返回上传成功信息:本步骤中,当服务端把文件接收完,服务端向客户端返回上传成功信息。执行完本步骤,执行步骤S08。
[89]
对于本实施例而言,上述步骤S06还可进一步细化,其细化后的流程图如图4所示。图4中,上述步骤S06进一步包括:
[90]
步骤S61 将文件进行压缩得到压缩文件,并向服务端发送压缩文件,同时更新仪表:本步骤中,将选择的文件进行压缩得到压缩文件,然后将该压缩文件向服务端进行发送,同时更新仪表。值得一的是,压缩文件的格式可以是zip格式,也可以是rar格式。
[91]
步骤S62客户端向服务端发送请求,并通知服务端启用压缩上传:本步骤中,客户端向服务端发送请求,告知服务端采用压缩上传的方式。
[92]
步骤S63服务端创建接收的临时文件,并向客户端返回上传路径:本步骤中,服务端创建接收的临时文件,并向客户端返回文件的上传路径。
[93]
步骤S64客户端接收上传路径后,加载压缩文件并将其按照上传路径进行上传:本步骤中,客户端接收上述上传路径,然后加载压缩文件,并将压缩文件按照上述上传路径进行上传。
[94]
步骤S65客户端监控压缩文件发送的字节,并更新仪表盘区标示的上传进度:本步骤中,客户端监控压缩文件已发送的字节,并更新仪表盘区标示的文件的上传进度。
[95]
步骤S66服务端接收完压缩文件,对压缩文件进行解压,并向客户端返回上传成功信息:本步骤中,服务端接收完压缩文件,对压缩文件进行解压,并向客户端返回文件上传成功的信息。本实施例中,当文件的大小处在5M和20M之间时,通过对文件进行压缩并对压缩文件进行上传,其可以加快上传的速度。执行完本步骤,执行步骤S08。
[96]
对于本实施例而言,上述步骤S07还可进一步细化,其细化后的流程图如图5所示。图5中,上述步骤S07进一步包括:
[97]
步骤S71 对文件进行分段进行多线程上传,更新仪表:本步骤中,对选择的文件进行分段得到多个分段文件,并进行多线程上传,同时更新仪表。
[98]
步骤S72 客户端向服务端发送请求,通知服务端启用多线程上传:本步骤中,客户端向服务端发送请求,通知服务端启用多线程上传的方式。
[99]
步骤S73服务端根据文件的大小创建多个线程及多个临时文件,并返回多个上传链接:本步骤中,服务端根据文件的大小创建多个线程及多个临时文件,并向客户端返回多个上传链接,也就是向客户端返回多个上传路径,也即每个分段文件的上传路径。
[100]
步骤S74客户端根据多个上传链接创建客户端线程,加载多个分段文件并进行上传:本步骤中,客户端根据多个上传链接创建客户端线程,加载上述多个分段文件并进行上传。
[101]
步骤S75 客户端监控各个分段文件发送的字节,并更新仪表盘区标示的多个分段文件的上传进度:本步骤中,客户端监控各个分段文件发送的字节,并更新仪表盘区标示的多个分段文件的上传进度,也就是更新仪表盘区标示的每个分段文件的上传进度。
[102]
步骤S76 服务端每接收完一个分段文件,向客户端返回上传成功信息:本步骤中,服务端每接收完一个分段文件,向客户端返回文件上传成功的信息。
[103]
步骤S77 当客户端接收到所有的分段文件上传成功信息后,发送文件的元数据给服务端:本步骤中,当客户端接收到所有的分段文件上传成功的信息后,客户端向服务端发送文件的元数据。
[104]
步骤S78 当服务端接收到元数据后,对所有的分段文件进行整合,并将最终上传后的文件地址返回到客户端:本步骤中,当服务端接收到元数据后,对所有的分段文件进行整合,并将整合后得到的文件的地址返回到客户端。本实施例中,通过将大于20M的文件进行分段上传,其可以加快上传的速度,节省时间。
[105]
本实施例还涉及一种实现上述通过仪表监控文件上传的方法的装置,其结构示意图如图6所示。本实施例中,仪表包括用于设置参数的设置区、用于标示文件上传进度的仪表盘区、用于标示文件上传状态的文件上传成功状态区和用于标示文件信息的文件信息区(请参见图2)。
[106]
图6中,该装置包括文件选择单元1、信息获取单元2、第一设定值判断单元3、文件上传单元4、中间值判断单元5、压缩文件上传单元6、分段上传单元7和更新单元8;其中,文件选择单元1用于使用户选择要上传的文件;信息获取单元2用于使所述仪表获取文件的信息,并根据文件的大小设定表盘的最大值,同时展示文件的元数据;元数据包括文件类型、文件大小和创建日期。第一设定值判断单元3用于判断文件的大小是否小于第一设定值;文件上传单元4用于使客户端将文件直接上传到服务端,并监控文件发送的字节来更新仪表盘区标示的进度,服务端接收完毕后返回上传成功信息;中间值判断单元5用于判断文件的大小是否大于第一设定值且小于第二设定值;本实施例中,第一设定值为5M,第二设定值为20M,当然,在本实施例的一些情况下,第一设定值和第二设定值的大小可根据具体情况进行相应调整。压缩文件上传单元6用于使客户端将文件进行压缩后进行上传,并监控压缩文件发送的字节来更新仪表盘区标示的进度,服务端接收完毕后,对压缩文件进行解压,并返回上传成功信息;分段上传单元7用于将文件进行分段并进行多线程上传,并根据每个分段文件发送的字节来更新仪表盘区标示的各个分段文件的进度,服务端接收完毕后,向客户端返回上传成功信息;更新单元8用于使客户端更新文件上传成功状态区的状态信息,完成文件上传。通过使用仪表,这样用户可以直观地通过仪表盘区看到文件上传的进度,通过文件信息区预览文件信息,通过文件上传成功状态区能看到文件上传成功信息,所以文件信息能以友好的方式展示出来、有足够好的交互界面、增强用户体验。
[107]
本实施例中,上述文件上传单元4进一步包括请求模块41、发送模块42、监控更新模块43和接收返回模块44;其中,请求模块41用于使客户端向服务端发送请求;发送模块42用于使客户端向服务端发送文件;监控更新模块43用于使客户端实时监控文件发送的字节,并更新仪表盘区标示的上传进度;接收返回模块44用于使服务端接收完文件,向客户端返回上传成功信息。
[108]
本实施例中,压缩文件上传单元6进一步包括压缩更新模块61、压缩通知模块62、临时文件创建模块63、压缩文件加载模块64、压缩文件发送模块65和解压模块66,其中,压缩更新模块61用于将文件进行压缩得到压缩文件,并向服务端发送压缩文件,同时更新仪表;压缩通知模块62用于使客户端向服务端发送请求,并通知服务端启用压缩上传;临时文件创建模块63用于使服务端创建接收的临时文件,并向客户端返回上传路径;压缩文件加载模块64用于使客户端接收上传路径后,加载压缩文件并将其按照上传路径进行上传;压缩文件发送模块65用于使客户端监控压缩文件发送的字节,并更新仪表盘区标示的上传进度;解压模块66用于使服务端接收完压缩文件,对压缩文件进行解压,并向客户端返回上传成功信息。通过对文件进行压缩,可以加快上传的速度。
[109]
本实施例中,分段上传单元7进一步包括多线程上传模块71、多线程通知模块72、多线程创建模块73、分段文件加载模块74、分段文件监控模块75、分段文件接收返回模块76、元数据发送模块77和整合模块78;其中,多线程上传模块71用于对文件进行分段进行多线程上传,更新仪表;多线程通知模块72用于使客户端向服务端发送请求,通知服务端启用多线程上传;多线程创建模块73用于使服务端根据文件的大小创建多个线程及多个临时文件,并返回多个上传链接;分段文件加载模块74用于使客户端根据多个上传链接创建客户端线程,加载多个分段文件并进行上传;分段文件监控模块75用于使客户端监控各个分段文件发送的字节,并更新仪表盘区标示的多个分段文件的上传进度;分段文件接收返回模块76用于使服务端每接收完一个分段文件,向客户端返回上传成功信息;元数据发送模块77用于当客户端接收到所有的分段文件上传成功信息后,发送文件的元数据给服务端;整合模块78用于当服务端接收到元数据后,对所有的分段文件进行整合,并将最终上传后的文件地址返回到客户端。通过对文件进行分段,然后对分段文件进行上传,其可以加快上传速度,节省时间。
[110]
总之,在本实施例中,上传文件用仪表的方式来显示上传进度,以及通过仪表来预览文件信息,相对于传统的文件上传,本发明使用户在上传文件时有了更好的用户体验。
[111]
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

权利要求书

[权利要求 1]
一种通过仪表监控文件上传的方法,其特征在于,所述仪表包括用于设置参数的设置区、用于标示文件上传进度的仪表盘区、用于标示文件上传状态的文件上传成功状态区和用于标示文件信息的文件信息区,所述方法包括如下步骤: A)用户选择要上传的文件; B)所述仪表获取所述文件的信息,并根据所述文件的大小设定表盘的最大值,同时展示所述文件的元数据; C)判断所述文件的大小是否小于第一设定值,如是,执行步骤D);否则,执行步骤E); D)客户端将所述文件直接上传到服务端,并监控所述文件发送的字节来更新所述仪表盘区标示的进度,所述服务端接收完毕后返回上传成功信息,执行步骤H); E)判断所述文件的大小是否大于第一设定值且小于第二设定值,如是,执行步骤F);否则,执行步骤G); F)所述客户端将所述文件进行压缩后进行上传,并监控压缩文件发送的字节来更新所述仪表盘区标示的进度,所述服务端接收完毕后,对所述压缩文件进行解压,并返回上传成功信息,执行步骤H); G)将所述文件进行分段并进行多线程上传,并根据每个分段文件发送的字节来更新所述仪表盘区标示的各个分段文件的进度,所述服务端接收完毕后,向所述客户端返回上传成功信息,执行步骤H); H)所述客户端更新所述文件上传成功状态区的状态信息,完成文件上传。
[权利要求 2]
根据权利要求1所述的通过仪表监控文件上传的方法,其特征在于,所述步骤D)进一步包括: D1)客户端向服务端发送请求; D2)所述客户端向所述服务端发送所述文件; D3)所述客户端实时监控所述文件发送的字节,并更新所述仪表盘区标示的上传进度; D4)所述服务端接收完所述文件,向所述客户端返回上传成功信息。
[权利要求 3]
根据权利要求2所述的通过仪表监控文件上传的方法,其特征在于,所述步骤F)进一步包括: F1)将文件进行压缩得到压缩文件,并向服务端发送所述压缩文件,同时更新所述仪表; F2)客户端向所述服务端发送请求,并通知所述服务端启用压缩上传; F3)所述服务端创建接收的临时文件,并向所述客户端返回上传路径; F4)所述客户端接收所述上传路径后,加载所述压缩文件并将其按照所述上传路径进行上传; F5)所述客户端监控所述压缩文件发送的字节,并更新所述仪表盘区标示的上传进度; F6)所述服务端接收完所述压缩文件,对所述压缩文件进行解压,并向所述客户端返回上传成功信息。
[权利要求 4]
根据权利要求1至3任意一项所述的通过仪表监控文件上传的方法,其特征在于,所述步骤G)进一步包括: G1)对所述文件进行分段进行多线程上传,更新所述仪表; G2)客户端向服务端发送请求,通知所述服务端启用多线程上传; G3)所述服务端根据所述文件的大小创建多个线程及多个临时文件,并返回多个上传链接; G4)所述客户端根据所述多个上传链接创建客户端线程,加载多个分段文件并进行上传; G5)所述客户端监控各个分段文件发送的字节,并更新所述仪表盘区标示的多个分段文件的上传进度; G6)所述服务端每接收完一个分段文件,向所述客户端返回上传成功信息; G7)当所述客户端接收到所有的分段文件上传成功信息后,发送所述文件的元数据给所述服务端; G8)当所述服务端接收到所述元数据后,对所有的分段文件进行整合,并将最终上传后的文件地址返回到所述客户端。
[权利要求 5]
根据权利要求1所述的通过仪表监控文件上传的方法,其特征在于,所述第一设定值为5M,所述第二设定值为20M,所述元数据包括文件类型、文件大小和创建日期。
[权利要求 6]
一种实现如权利要求1所述的通过仪表监控文件上传的方法的装置,其特征在于,所述仪表包括用于设置参数的设置区、用于标示文件上传进度的仪表盘区、用于标示文件上传状态的文件上传成功状态区和用于标示文件信息的文件信息区,所述装置包括: 文件选择单元:用于使用户选择要上传的文件; 信息获取单元:用于使所述仪表获取所述文件的信息,并根据所述文件的大小设定表盘的最大值,同时展示所述文件的元数据; 第一设定值判断单元:用于判断所述文件的大小是否小于第一设定值; 文件上传单元:用于使客户端将所述文件直接上传到服务端,并监控所述文件发送的字节来更新所述仪表盘区标示的进度,所述服务端接收完毕后返回上传成功信息; 中间值判断单元:用于判断所述文件的大小是否大于第一设定值且小于第二设定值; 压缩文件上传单元:用于使所述客户端将所述文件进行压缩后进行上传,并监控压缩文件发送的字节来更新所述仪表盘区标示的进度,所述服务端接收完毕后,对所述压缩文件进行解压,并返回上传成功信息; 分段上传单元:用于将所述文件进行分段并进行多线程上传,并根据每个分段文件发送的字节来更新所述仪表盘区标示的各个分段文件的进度,所述服务端接收完毕后,向所述客户端返回上传成功信息; 更新单元:用于使所述客户端更新所述文件上传成功状态区的状态信息,完成文件上传。
[权利要求 7]
根据权利要求6所述的实现上述通过仪表监控文件上传的方法的装置,其特征在于,所述文件上传单元进一步包括: 请求模块:用于使客户端向服务端发送请求; 发送模块:用于使所述客户端向所述服务端发送所述文件; 监控更新模块:用于使所述客户端实时监控所述文件发送的字节,并更新所述仪表盘区标示的上传进度; 接收返回模块:用于使所述服务端接收完所述文件,向所述客户端返回上传成功信息。
[权利要求 8]
根据权利要求7所述的实现上述通过仪表监控文件上传的方法的装置,其特征在于,所述压缩文件上传单元进一步包括: 压缩更新模块:用于将文件进行压缩得到压缩文件,并向服务端发送所述压缩文件,同时更新所述仪表; 压缩通知模块:用于使客户端向所述服务端发送请求,并通知所述服务端启用压缩上传; 临时文件创建模块:用于使所述服务端创建接收的临时文件,并向所述客户端返回上传路径; 压缩文件加载模块:用于使所述客户端接收所述上传路径后,加载所述压缩文件并将其按照所述上传路径进行上传; 压缩文件发送模块:用于使所述客户端监控所述压缩文件发送的字节,并更新所述仪表盘区标示的上传进度; 解压模块:用于使所述服务端接收完所述压缩文件,对所述压缩文件进行解压,并向所述客户端返回上传成功信息。
[权利要求 9]
据权利要求6至8任意一项所述的实现上述通过仪表监控文件上传的方法的装置,其特征在于,所述分段上传单元进一步包括: 多线程上传模块:用于对所述文件进行分段进行多线程上传,更新所述仪表; 多线程通知模块:用于使客户端向服务端发送请求,通知所述服务端启用多线程上传; 多线程创建模块:用于使所述服务端根据所述文件的大小创建多个线程及多个临时文件,并返回多个上传链接; 分段文件加载模块:用于使所述客户端根据所述多个上传链接创建客户端线程,加载多个分段文件并进行上传; 分段文件监控模块:用于使所述客户端监控各个分段文件发送的字节,并更新所述仪表盘区标示的多个分段文件的上传进度; 分段文件接收返回模块:用于使所述服务端每接收完一个分段文件,向所述客户端返回上传成功信息; 元数据发送模块:用于当所述客户端接收到所有的分段文件上传成功信息后,发送所述文件的元数据给所述服务端; 整合模块:用于当所述服务端接收到所述元数据后,对所有的分段文件进行整合,并将最终上传后的文件地址返回到所述客户端。
[权利要求 10]
根据权利要求6所述的现上述通过仪表监控文件上传的方法的装置,其特征在于,所述第一设定值为5M,所述第二设定值为20M,所述元数据包括文件类型、文件大小和创建日期。

附图