CN105897911A - 下载文件的方法、装置及用户终端 - Google Patents
下载文件的方法、装置及用户终端 Download PDFInfo
- Publication number
- CN105897911A CN105897911A CN201610345945.6A CN201610345945A CN105897911A CN 105897911 A CN105897911 A CN 105897911A CN 201610345945 A CN201610345945 A CN 201610345945A CN 105897911 A CN105897911 A CN 105897911A
- Authority
- CN
- China
- Prior art keywords
- download
- byte length
- total byte
- file
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 83
- 230000004044 response Effects 0.000 claims abstract description 51
- 230000000977 initiatory effect Effects 0.000 claims abstract description 24
- 238000009826 distribution Methods 0.000 claims abstract description 4
- 230000015654 memory Effects 0.000 claims description 8
- 230000008878 coupling Effects 0.000 claims 1
- 238000010168 coupling process Methods 0.000 claims 1
- 238000005859 coupling reaction Methods 0.000 claims 1
- 230000008569 process Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 8
- 238000003860 storage Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 230000011218 segmentation Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 238000007689 inspection Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000000712 assembly Effects 0.000 description 2
- 238000000429 assembly Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例提供一种下载文件的方法、装置及用户终端,所述方法包括:接收第一服务器返回的下载链接,所述下载链接包括目标文件的第一总字节长度;向与所述下载链接对应的第二服务器发起下载所述目标文件的HTTP请求;接收所述第二服务器返回的HTTP响应头信息,所述HTTP响应头信息包括当前文件的第二总字节长度;当所述第一总字节长度与所述第二总字节长度一致时,开始下载所述当前文件。所述方法简单高效,无需修改客户端与服务端的接口协议,并且确保了应用分发的正确性,提高了下载成功率以及用户下载体验。
Description
技术领域
本发明涉及计算机应用领域,具体而言,涉及一种下载文件的方法、装置及用户终端。
背景技术
当前下载软件在下载应用文件时,可能会出现下载文件字节数据错乱或数据里混杂着网页源码数据,导致安装失败的情况;或者会出现由于运营商重定向了下载链接或替换了下载内容,使得所下载的应用文件变成了其它运营商推广的应用,而导致安装的应用非用户预期的应用文件的情况。这两种情况会使用户的流量被浪费、下载失败率高且用户体验较差。
发明内容
有鉴于此,本发明实施例的目的在于提供一种下载文件的方法、装置及用户终端,以解决上述问题。
为了实现上述目的,本发明实施例采用的技术方案如下:
第一方面,本发明实施例提供了一种下载文件的方法,所述方法包括:接收第一服务器返回的下载链接,所述下载链接包括目标文件的第一总字节长度;向与所述下载链接对应的第二服务器发起下载所述目标文件的HTTP请求;接收所述第二服务器返回的HTTP响应头信息,所述HTTP响应头信息包括当前文件的第二总字节长度;当所述第一总字节长度与所述第 二总字节长度一致时,开始下载所述当前文件。
第二方面,本发明实施例提供了一种下载文件的装置,所述装置包括:第一接收模块,用于接收第一服务器返回的下载链接,所述下载链接包括目标文件的第一总字节长度;发送模块,用于向与所述下载链接对应的第二服务器发起下载所述目标文件的HTTP请求;第二接收模块,用于接收所述第二服务器返回的HTTP响应头信息,所述HTTP响应头信息包括当前文件的第二总字节长度;下载模块,用于当所述第一总字节长度与所述第二总字节长度一致时,开始下载所述当前文件。
第三方面,本发明实施例提供了一种用户终端,所述用户终端包括处理器以及存储器,所述存储器耦接到所述处理器,所述存储器存储指令,当所述指令由所述处理器执行时使所述用户终端执行以下操作:接收第一服务器返回的下载链接,所述下载链接包括目标文件的第一总字节长度;向与所述下载链接对应的第二服务器发起下载所述目标文件的HTTP请求;接收所述第二服务器返回的HTTP响应头信息,所述HTTP响应头信息包括当前文件的第二总字节长度;当所述第一总字节长度与所述第二总字节长度一致时,开始下载所述当前文件。
与现有技术相比,本发明实施例提供的一种下载文件的方法、装置及用户终端,通过在下载当前文件之前,检验目标文件的所述第一总字节长度与当前文件的所述第二总字节长度是否一致,以实现对当前下载文件的合法性的检验,所述方法无需修改客户端与服务端的接口协议,实现起来简单高效,解决了下载应用文件字节数据错乱或数据里混杂着网页源码数据导致安装失败、以及运营商重定向了下载链接导致安装的应用非用户预期的应用文件的问题,提高了下载成功率以及用户下载体验。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是本发明实施例提供的用户终端与服务器进行交互的示意图。
图2是本发明实施例提供的用户终端的结构示意图。
图3是本发明第一实施例提供的一种下载文件的方法的流程图。
图4是本发明第二实施例提供的一种下载文件的方法的流程图。
图5是本发明第三实施例提供的一种下载文件的方法的流程图。
图6是本发明第四实施例提供的一种下载文件的方法的流程图。
图7是本发明第五实施例提供的一种下载文件的方法的流程图。
图8是本发明第六实施例提供的一种下载文件的方法的流程图。
图9是本发明实施例提供的一种下载文件装置的结构框图。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
图1示出了本发明实施例提供的服务器200与用户终端100进行交互的示意图。所述服务器200通过网络300与一个或多个用户终端100进行通信连接,以进行数据通信或交互。所述服务器200可以是网络服务器、数据库服务器等。所述用户终端100可以是个人电脑(personal computer,PC)、平板电脑、智能手机、个人数字助理(personal digitalassistant,PDA)、车载设备、穿戴设备等。
图2示出了一种可应用于本发明实施例中的用户终端100的结构框图。如图2所示,用户终端100包括存储器102、存储控制器104,一个或多个(图中仅示出一个)处理器106、外设接口108、射频模块110、音频模块112、触控屏幕114等。这些组件通过一条或多条通讯总线/信号线116相互通讯。
存储器102可用于存储软件程序以及模块,如本发明实施例中的下载文件的方法以及装置对应的程序指令/模块,处理器106通过运行存储在存储器102内的软件程序以及模块,从而执行各种功能应用以及数据处理,如本发明实施例提供的下载文件的方法。
存储器102可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。处理器106以及其他可能的组件对存储器102的访问可在存储控制器104的控制下进行。
外设接口108将各种输入/输入装置耦合至处理器106以及存储器102。在一些实施例中,外设接口108,处理器106以及存储控制器104可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。
射频模块110用于接收以及发送电磁波,实现电磁波与电信号的相互转换,从而与通讯网络或者其他设备进行通讯。
音频模块112向用户提供音频接口,其可包括一个或多个麦克风、一个或者多个扬声器以及音频电路。
触控屏幕114在用户终端100与用户之间同时提供一个输出及输入界面。具体地,触控屏幕114向用户显示视频输出,这些视频输出的内容可包括文字、图形、视频及其任意组合。
可以理解,图1所示的结构仅为示意,用户终端100还可包括比图2中所示更多或者更少的组件,或者具有与图2所示不同的配置。图2中所示的各组件可以采用硬件、软件或其组合实现。
于本发明实施例中,用户终端100中安装有客户端,该客户端可以是第三方应用软件,与服务器(Server)端相对应,共同遵循同一套数据协议,使得服务端跟客户端能够互相解析出对方的数据,为用户提供下载服务,例如下载文件,下载视频,下载音频等。
图3示出了本发明第一实施例提供的一种下载文件的方法的流程图,请参阅图3,本实施例描述的是客户端的处理流程,所述方法包括:
步骤S301,接收第一服务器返回的下载链接,所述下载链接包括目标文件的第一总字节长度;
可以理解的是,所述下载链接中的第一总字节长度,可以是由所述第一服务器预先将已有的文件进行处理得到的每个文件的总字节长度。服务器得到每个文件的总字节长度后在每个文件的下载链接后添加总字节长度这个参数,得到新的下载链接,并更新第一服务器的数据库。当所述第一服务器接收到客户端的下载链接请求后,将目标文件对应的下载链接返回给客户端。
例如,假设第一服务器中之前存储的文件A对应的下载链接为:http://android-apps.25pp.com/fs01/2015/01/29/5/0_dd84568d3e5831d f12dac8cedc556e52.apk,
第一服务器通过计算求出文件A的总字节长度,假设为19736456,则第一服务器将文件A对应的下载链接更新为:
http://android-apps.25pp.com/fs01/2015/01/29/5/0_dd84568d3e5831df12dac8cedc556e52.apk?size=19736456,其中,size=19736456是目标文件A的总字节长度。
当所述第一服务器接收到以文件A作为目标文件的下载链接请求后,将包含size=19736456的下载链接返回给客户端。
步骤S302,向与所述下载链接对应的第二服务器发起下载所述目标文件的HTTP请求;
例如,在前述示例中,当客户端接收到目标文件A对应的下载链接后,向所述下载链接:
http://android-apps.25pp.com/fs01/2015/01/29/5/0_dd84568d3e5831df12dac8cedc556e52.apk?size=19736456,
对应的第二服务器发起下载所述目标文件的HTTP请求。
可以理解的是,所述第一服务器跟所述第二服务器可以为同一个服务器,即可以将目标文件的内容单独存放在第二服务器,也可以同时在第一服务器上存储目标文件的下载链接以及目标文件的内容。
步骤S303,接收所述第二服务器返回的HTTP响应头信息,所述HTTP响应头信息包括当前文件的第二总字节长度;
第二服务器接收到所述HTTP请求后,会返回HTTP响应信息。其中,HTTP响应信息包括HTTP响应头信息和HTTP响应正文信息。解析所述HTTP响应信息中的HTTP响应头信息,其中,HTTP响应头信息中可以包括多个字段,取出表示当前文件的总字节长度的字段,例如“content-range”字段,通过该字段,第一服务器就可以获知当前请求下载的文件的大小,也就是第二总字节长度。
步骤S304,当所述第一总字节长度与所述第二总字节长度一致时,开始下载所述当前文件。
可以理解的是,如果应用文件字节数据错乱或数据里混杂着网页源码数据,或者运营商重定向了下载链接或替换了下载内容,通常会导致所述第一总字节长度与所述第二总字节长度不一致,因此当所述第一总字节长度与所述第二总字节长度不一致时,可以判定当前下载文件并非目标文件。因此当所述第一总字节长度与所述第二总字节长度不一致时,可以重新向与第二服务器发起下载所述目标文件的HTTP请求。
本发明实施例提供的下载文件的方法,通过在下载当前文件之前,检验目标文件的所述第一总字节长度与当前文件的所述第二总字节长度是否一致,来检验当前下载文件与目标文件是否为同一个文件,所述方法是在下载之前进行检验,而不是在下载过程中请求服务器进行检验,节约了检验的时间,避免了已经开始下载才发现当前文件并非目标文件,避免了浪费用户流量的问题。检验过程也无需服务器进行配合,因此无需引入新的复杂的逻辑,并且无需修改客户端与服务端的接口协议,只需要预先重新生成数据库中目标文件对应的下载链接即可,这种方式简单有效,且一定程度上解决了应用文件字节数据错乱或数据里混杂着网页源码数据导致安装失败以及运营商重定向了下载链接导致安装的应用非用户预期的应用文件的问题。
图4示出了本发明第二实施例提供的一种下载文件的方法的流程图,请参阅图4,本实施例描述的是客户端的处理流程,所述方法包括:
步骤S401,接收第一服务器返回的下载链接,所述下载链接包括目标文件的第一总字节长度;
步骤S402,向与所述下载链接对应的第二服务器发起下载所述目标文件的HTTP请求;
步骤S403,接收所述第二服务器返回的HTTP响应头信息,所述HTTP 响应头信息包括当前文件的第二总字节长度;
可以理解的是,步骤S401至步骤S403的实施方式可以参考上一实施例中的步骤S301至步骤S303的实施方式,此处不再赘述。
步骤S404,判断所述第一总字节长度与所述第二总字节长度是否一致;
当所述第一总字节长度与所述第二总字节长度不一致时,可以判定当前下载文件并非目标文件。因此当所述第一总字节长度与所述第二总字节长度不一致时,执行步骤S405至步骤S410,当所述第一总字节长度与所述第二总字节长度一致时,执行步骤S411。
步骤S405,判断重新向与第二服务器发起下载所述目标文件的HTTP请求的次数是否达到预设次数;
可以理解的是,考虑到客户端重新向与第二服务器发起下载所述目标文件的HTTP请求的次数太多会影响文件下载请求的响应速度,因此客户端需要设置一个预设次数,当重新向与第二服务器发起下载所述目标文件的HTTP请求的次数没有达到预设次数,执行步骤S402至步骤S404,否则执行步骤S406。
步骤S406,向所述下载链接对应的第二服务器发起HTTPS请求。
可以理解的是,当所述目标文件的第一总字节长度与所述当前文件的第二总字节长度不一致时,判定当前HTTP请求可能被劫持,并且多次重试仍然被劫,此时采用HTTPS协议来发起下载请求。HTTPS即超文本传输安全协议,该协议的主要目的是提供对网络服务器的身份认证,保护交互数据的隐私和完整性。因此采用HTTPS进行下载请求可以保证下载请求相对安全,并且被劫持的几率大大降低。但是,可以理解的是,HTTPS协议由于每次通信需要加解密,对服务器性能开销大,成本高,所以在多次重试HTTP请求未果的情况下才会使用HTTPS进行请求下载。
可以理解的是,在其他实施方式中,预设次数也可以为零,即,当向第二服务器发起HTTP请求一次后,若所述第一总字节长度与所述第二总字 节长度不一致,则可以立即向所述下载链接对应的第二服务器发起HTTPS请求。
步骤S407,接收所述第二服务器返回的HTTPS响应头信息,所述HTTPS响应头信息包括当前文件的第二总字节长度;
步骤S408,判断所述第一总字节长度与所述第二总字节长度是否一致;
当所述第一总字节长度与所述第二总字节长度不一致时,执行步骤S409,当所述第一总字节长度与所述第二总字节长度一致时,执行步骤S411。
步骤S409,判断重新向与第二服务器发起下载所述目标文件的HTTPS请求的次数是否达到预设次数;
可以理解的是,同样的,所述预设次数可以为零次。即,这种情况下只会向与第二服务器发起一次下载所述目标文件的HTTPS请求。另外,预设次数的设置也可以是根据目标文件的重要性来决定,当目标文件比较重要时,预设次数的值可以设置较大。
当向与第二服务器发起下载所述目标文件的HTTPS请求的次数没有达到预设次数,执行步骤S406至步骤S407,否则执行步骤S410。
步骤S410,显示用于提示用户网络异常的信息。
可以理解的是,通常来说,当进行多次HTTPS请求,仍然失败的原因,大多数是由于网络繁忙,网络中断或者例如2G/3G网络的切换导致的,此时显示用于提示用户网络异常的信息,以使用户看到所述提示信息后,可以进一步向客户端发起指示。
步骤S411,开始下载所述当前文件。
本发明实施例提供的下载文件的方法,除了解决了上一实施例可以解决的问题外,通过在向与第二服务器发起下载所述目标文件的HTTP请求的次数达到预设次数后,向第二服务器发起HTTPS请求,进一步解决了HTTP请求多次被劫持而导致下载的当前文件并非目标文件以及无法下载的问 题,提高了下载的成功率。
图5示出了本发明第三实施例提供的一种下载文件的方法的流程图,请参阅图5,本实施例描述的是客户端的处理流程,所述方法包括:
步骤S501,接收第一服务器返回的下载链接,所述下载链接包括目标文件的第一总字节长度及下载文件的第一数字签名;
其中,第一数字签名,是指对目标文件的文件内容通过摘要算法或者哈希算法等杂凑算法进行运算后求出的一个固定长度值,所述固定长度值即为第一数字签名,例如SHA-1签名,RIPEMD签名以及Hava签名等。
优选的,第一数字签名可以为MD5签名。可以理解的,文件的MD5值就像是这个文件的“数字指纹”。每个文件的MD5值是不同的,如果任何人对文件做了任何改动,其MD5值也就是对应的“数字指纹”就会发生变化。
例如目标下载文件的下载链接为:http://android-apps.25pp.com/fs01/2015/01/29/5/0_dd84568d3e5831df12dac8cedc556e52.apk?size=19736456&md5=7ca110f191c0d918f137efd072123273,
其中,size=19736456表示的是该目标文件的第一总字节长度:19736456,md5=7ca110f191c0d918f137efd072123273表示的是该目标文件的第一数字签名为:7ca110f191c0d918f137efd072123273。
步骤S502,向与所述下载链接对应的第二服务器发起下载所述目标文件的HTTP请求;
步骤S503,接收所述第二服务器返回的HTTP响应头信息,所述HTTP响应头信息包括当前文件的第二总字节长度;
步骤S504,判断所述第一总字节长度与所述第二总字节长度是否一致;
当所述第一总字节长度与所述第二总字节长度不一致时,执行步骤S505至步骤S510,当所述第一总字节长度与所述第二总字节长度一致时,执行步骤S511至步骤S513。
假设所述HTTP响应头信息中包括的当前文件的第二总字节长度为:19736456,可以判定出所述第一总字节长度与第二总字节长度一致,则可以开始下载。如果此时第二总字节长度不为19736456,则执行步骤S505至步骤S510,所述步骤S505至步骤S510与上一实施例中的步骤S405至步骤S410实施方式一致,此处就不再赘述。
步骤S505,判断重新向与第二服务器发起下载所述目标文件的HTTP请求的次数是否达到预设次数;
当向与第二服务器发起下载所述目标文件的HTTP请求的次数没有达到预设次数,执行步骤S502至步骤S504,否则执行步骤S506。
步骤S506,向所述下载链接对应的第二服务器发起HTTPS请求。
步骤S507,接收所述第二服务器返回的HTTPS响应头信息,所述HTTPS响应头信息包括当前文件的第二总字节长度;
步骤S508,判断所述第一总字节长度与所述第二总字节长度是否一致;
当所述第一总字节长度与所述第二总字节长度不一致时,执行步骤S509,当所述第一总字节长度与所述第二总字节长度一致时,执行步骤S511至步骤S513。
步骤S509,判断重新向与第二服务器发起下载所述目标文件的HTTPS请求的次数是否达到预设次数;
当重新向与第二服务器发起下载所述目标文件的HTTPS请求的次数没有达到预设次数,执行步骤S506至步骤S507,否则执行步骤S510。
步骤S510,显示用于提示用户网络异常的信息。
步骤S511,开始下载所述当前文件。
步骤S512,当所述当前文件下载完成后,计算所述当前文件的第二数字签名;判断所述第一数字签名与所述第二数字签名是否一致,如果一致,则判定所述当前文件为所述目标文件,下载成功,否则,下载失败。
可以理解的是,有时候可能会出现当前文件即使被劫持过、替换过或 者篡改,但是其第二总字节大小可能恰好与目标文件的第一总字节大小一致,因此在下载完成后,再次检验所述第一数字签名与所述第二数字签名是否一致,可以更加确保下载文件的合法性以及完整性。
例如,当下载完成后,根据与计算目标文件的第一数字签名同样的方法计算出当前文件的第二数字签名,如果一致,即当前文件的第二数字签名为:7ca110f191c0d918f137efd072123273,则判定所述当前文件为所述目标文件,下载成功,反之下载失败。
步骤S513,若下载失败,显示用于提示用户重新下载的信息。
可以理解的是,当所述第一数字签名与所述第二数字签名不一致时,说明当前文件的内容被劫持过,替换过或者篡改过,因此需要向用户显示用于提示用户重新下载的信息,防止用户安装已经被劫持过,替换过或者篡改过的当前文件。
本发明实施例提供的下载文件的方法,除了解决了上两个实施例可以解决的方法外,并且通过在当前文件下载完成后对当前文件的数字签名进行检测,进一步的确保了下载文件的合法性以及完整性。
图6示出了本发明第四实施例提供的一种下载文件的方法的流程图,请参阅图6,本实施例描述的是客户端的处理流程,所述方法包括:
步骤S601,接收第一服务器返回的下载链接,所述下载链接包括目标文件的第一总字节长度;
步骤S602,根据所述第一总字节长度,分配多个线程;
可以理解的是,对于当前文件的下载可以采用多线程的方式或者单线程的方式进行下载,而是否采用多线程,有许多策略可以选择,可以根据下载速度与分段数及文件大小的关联性的统计对比来确定,比较简单有效的是根据所述第一总字节长度来决定。例如第一总字节长度为256个字节时的采用单线程,第一总字节长度大于256字节且小于512字节时,采用双线程,第一总字节长度大于512字节时采用三线程。可以理解的是,选 择多线程的实施方式可以有多种,并不局限于上述实施方式。
步骤S603,通过所述多个线程分别向与所述下载链接对应的第二服务器发起下载所述目标文件的HTTP请求;
步骤S604,通过所述多个线程分别接收所述第二服务器返回的HTTP响应头信息,所述HTTP响应头信息包括当前文件的第二总字节长度;
步骤S605,当所述第一总字节长度与所述第二总字节长度一致时,每个线程分别开始下载所述当前文件。
可以理解的是,所述步骤S603至步骤S605与第一实施例中的步骤S302至步骤S304中的区别在于,本实施例是采用多线程进行当前文件的分段下载,在每个线程中实现步骤S302至步骤S304中的方法,相关内容就不再赘述。
本发明实施例提供的下载文件的方法,除了可以解决第一实施例可以解决的问题,还通过多线程进行分段下载,加快了下载文件的速度,并且每个线程都会进行所述第一总字节长度与所述第二总字节长度的检验,进一步提高了用户下载的体验。
图7示出了本发明第五实施例提供的一种下载文件的方法的流程图,请参阅图7,本实施例描述的是客户端的处理流程,所述方法包括:
步骤S701,接收第一服务器返回的下载链接,所述下载链接包括目标文件的第一总字节长度;
步骤S702,根据所述第一总字节长度,分配多个线程;
步骤S703,通过所述多个线程分别向与所述下载链接对应的第二服务器发起下载所述目标文件的HTTP请求;
步骤S704,通过所述多个线程分别接收所述第二服务器返回的HTTP响应头信息,所述HTTP响应头信息包括当前文件的第二总字节长度;
步骤S705,每个线程判断所述第一总字节长度与所述第二总字节长度是否一致;
当所述第一总字节长度与所述第二总字节长度不一致时,判定出不一致的线程执行步骤S706至步骤S711,当所述第一总字节长度与所述第二总字节长度一致时,执行步骤S712。
步骤S706,判断重新向与第二服务器发起下载所述目标文件的HTTP请求的次数是否达到预设次数;
当向与第二服务器发起下载所述目标文件的HTTP请求的次数没有达到预设次数,执行步骤S703至步骤S705,否则执行步骤S707。
步骤S707,再次向所述下载链接对应的第二服务器发起HTTP请求;
步骤S708,接收所述第二服务器返回的HTTPS响应头信息,所述HTTPS响应头信息包括当前文件的第二总字节长度;
步骤S709,判断所述第一总字节长度与所述第二总字节长度是否一致;
当所述第一总字节长度与所述第二总字节长度不一致时,执行步骤S710,当所述第一总字节长度与所述第二总字节长度一致时,执行步骤S711。
步骤S710,判断重新向与第二服务器发起下载所述目标文件的HTTPS请求的次数是否达到预设次数;
当向与第二服务器发起下载所述目标文件的HTTPS请求的次数没有达到预设次数,执行步骤S707至步骤S708,否则执行步骤S711。
步骤S711,显示用于提示用户网络异常的信息。
步骤S712,每个线程开始下载所述当前文件。
可以理解的是,所述步骤S703至步骤S712与第二实施例中的步骤S402至步骤S411中的区别在于,本实施例是采用多线程进行当前文件的分段下载,在每个线程中实现步骤S402至步骤S411中的方法,相关内容就不再此赘述。
本发明实施例提供的下载文件的方法,除了可以解决第二实施例可以解决的问题,还通过多线程进行分段下载,加快了下载文件的速度,并且 每个线程都会在向与第二服务器发起下载所述目标文件的HTTP请求的次数达到预设次数后,向第二服务器发起HTTPS请求,进一步解决了HTTP请求多次被劫持而导致下载的当前文件并非目标文件以及无法下载的问题,提高了下载的成功率,进一步提高了用户下载的体验。
图8示出了本发明第六实施例提供的一种下载文件的方法的流程图,请参阅图8,本实施例描述的是客户端的处理流程,所述方法包括:
步骤S801,接收第一服务器返回的下载链接,所述下载链接包括目标文件的第一总字节长度;
步骤S802,根据所述第一总字节长度,分配多个线程;
步骤S803,通过所述多个线程分别向与所述下载链接对应的第二服务器发起下载所述目标文件的HTTP请求;
步骤S804,通过所述多个线程分别接收所述第二服务器返回的HTTP响应头信息,所述HTTP响应头信息包括当前文件的第二总字节长度;
步骤S805,每个线程判断所述第一总字节长度与所述第二总字节长度是否一致;
当所述第一总字节长度与所述第二总字节长度不一致时,判定出不一致的线程执行步骤S806至步骤S811,当所述第一总字节长度与所述第二总字节长度一致时,执行步骤S812。
步骤S806,判断重新向与第二服务器发起下载所述目标文件的HTTP请求的次数是否达到预设次数;
当向与第二服务器发起下载所述目标文件的HTTP请求的次数没有达到预设次数,执行步骤S803至步骤S805,否则执行步骤S807。
步骤S807,再次向所述下载链接对应的第二服务器发起HTTP请求;
步骤S808,接收所述第二服务器返回的HTTPS响应头信息,所述HTTPS响应头信息包括当前文件的第二总字节长度;
步骤S809,判断所述第一总字节长度与所述第二总字节长度是否一致;
当所述第一总字节长度与所述第二总字节长度不一致时,执行步骤S810,当所述第一总字节长度与所述第二总字节长度一致时,执行步骤S811。
步骤S810,判断重新向与第二服务器发起下载所述目标文件的HTTPS请求的次数是否达到预设次数;
当向与第二服务器发起下载所述目标文件的HTTPS请求的次数没有达到预设次数,执行步骤S807至步骤S808,否则执行步骤S811。
步骤S811,显示用于提示用户网络异常的信息。
步骤S812,每个线程开始下载所述当前文件.
可以理解的是,每个线程下载的内容为当前文件的一部分。例如:当前文件大小100个字节,分3个线程进行下载,那么第一线程就请求下载0-33个字节,第二线程就请求下载34-67个字节,第三线程就请求下载68-100的字节。
步骤S813,当每个线程下载完毕,即当前文件下载完毕,计算所述当前文件的第二数字签名;判断所述第一数字签名与所述第二数字签名是否一致,如果一致,则判定所述当前文件为所述目标文件,下载成功,否则,下载失败。
步骤S814,当所述当前文件下载失败,显示用于提示用户重新下载的信息。
可以理解的是,所述步骤S803至步骤S814与第二实施例中的步骤S502至步骤S513中的区别在于,本实施例是采用多线程进行当前文件的分段下载,在每个线程中实现步骤S502至步骤S513中的方法,相关内容就不再此赘述。
本发明实施例提供的下载文件的方法,除了可以解决第三实施例可以解决的问题,还通过多线程进行分段下载,加快了下载文件的速度,并且在每个线程下载完成后,会对当前文件下载完成后对当前文件的数字签名 进行检测,确保当前文件与目标文件一致,确保分发的正确性,进一步提高了用户下载的体验。
请参阅图9,是本发明实施例提供的下载文件的装置200的功能模块示意图。所述下载文件的装置200包括第一接收模块201,发送模块202,第二接收模块203以及下载模块204。
所述第一接收模块201,用于接收第一服务器返回的下载链接,所述下载链接包括目标文件的第一总字节长度;
所述发送模块202,用于向与所述下载链接对应的第二服务器发起下载所述目标文件的HTTP请求;
所述第二接收模块203,用于接收所述第二服务器返回的HTTP响应头信息,所述HTTP响应头信息包括当前文件的第二总字节长度;
所述下载模块204,用于当所述第一总字节长度与所述第二总字节长度一致时,开始下载所述当前文件。
考虑当HTTP请求会被劫持后还需要继续下载文件,因此,优选的,所述装置还包括:第一请求模块205,所述第一请求模块205,用于当所述第一总字节长度与所述第二总字节长度不一致时,再次向所述下载链接对应的第二服务器发起HTTP请求。
进一步的,考虑如果发起多次HTTP请求仍被劫持后,还需要继续下载文件,因此,优选的,所述装置还包括:第二请求模块206,所述第二请求模块206,用于向所述下载链接对应的第二服务器发起预设次数的HTTP请求后,所述第一总字节长度与所述第二总字节长度仍不一致时,则向所述下载链接对应的第二服务器发起HTTPS请求。
进一步的,考虑到下载到的当前文件跟目标文件的总字节大小如果一致,但是还可能出现文件的内容并不一致的情况,因此,优选的所述第一接收模块201接收到的所述下载链接还包括下载文件的第一数字签名,所述装置还包括判断模块207,所述判断模块207,用于在所述下载模块204 开始下载所述当前文件之后,当所述当前文件下载完成后,计算所述当前文件的第二数字签名;判断所述第一数字签名与所述第二数字签名是否一致,如果一致,则判定所述当前文件为所述目标文件,下载成功,否则,下载失败。
进一步的,考虑到目标文件的大小不一,可能出现较大文件时,采用多线程能够加快下载的速度,因此优选的,所述装置还包括分配模块208,所述分配模块208用于根据所述第一总字节长度,分配多个线程;所述发送模块202,还用于通过所述多个线程分别向与所述下载链接对应的第二服务器发起下载所述目标文件的HTTP请求;所述第二接收模块203,还用于通过所述多个线程分别接收所述第二服务器返回的HTTP响应头信息,所述HTTP响应头信息包括当前文件的第二总字节长度;所述下载模块204,还用于当所述第一总字节长度与所述第二总字节长度一致时,每个线程分别开始下载所述当前文件。所述第一请求模块205,还用于当判定出所述第一总字节长度与所述第二总字节长度不一致时,判定出不一致的线程再次向所述下载链接对应的第二服务器发起HTTP请求。所述第二请求模块206,还用于在所述判定出不一致的线程向所述下载链接对应的第二服务器发起预设次数的HTTP请求之后,所述第一总字节长度与所述第二总字节长度仍不一致时,所述判定出不一致的线程向所述下载链接对应的第二服务器发起HTTPS请求。
以上各模块可以是由软件代码实现,此时,上述的各模块可存储于用户终端100的存储器102内。以上各模块同样可以由硬件例如集成电路芯片实现。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本发明实施例所提供的下载文件的装置,其实现原理及产生的技术效 果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和 第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (19)
1.一种下载文件的方法,其特征在于,所述方法包括:
接收第一服务器返回的下载链接,所述下载链接包括目标文件的第一总字节长度;
向与所述下载链接对应的第二服务器发起下载所述目标文件的HTTP请求;
接收所述第二服务器返回的HTTP响应头信息,所述HTTP响应头信息包括当前文件的第二总字节长度;
当所述第一总字节长度与所述第二总字节长度一致时,开始下载所述当前文件。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述第一总字节长度与所述第二总字节长度不一致时,再次向所述下载链接对应的第二服务器发起HTTP请求。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:向所述下载链接对应的第二服务器发起预设次数的HTTP请求后,所述第一总字节长度与所述第二总字节长度仍不一致时,则向所述下载链接对应的第二服务器发起HTTPS请求。
4.根据权利要求3所述的方法,其特征在于,在所述向所述下载链接对应的第二服务器发起HTTPS请求之后,所述方法还包括:
当所述HTTPS请求失败,显示用于提示用户网络异常的信息。
5.根据权利要求1所述的方法,其特征在于,所述下载链接还包括下载文件的第一数字签名,在所述开始下载所述当前文件之后,所述方法还包括:
当所述当前文件下载完成后,计算所述当前文件的第二数字签名;
判断所述第一数字签名与所述第二数字签名是否一致,如果一致,则判定所述当前文件为所述目标文件,下载成功,否则,下载失败。
6.根据权利要求5所述的方法,其特征在于,在所述下载失败之后,所述方法还包括:显示用于提示用户重新下载的信息。
7.根据权利要求5所述的方法,其特征在于,所述第一数字签名和第二数字签名为MD5签名。
8.根据权利要求1所述的方法,其特征在于,向与所述下载链接对应的第二服务器发起下载所述目标文件的HTTP请求,接收所述第二服务器返回的HTTP响应头信息,所述HTTP响应头信息包括当前文件的第二总字节长度,当所述第一总字节长度与所述第二总字节长度一致时,开始下载所述当前文件,具体包括:
根据所述第一总字节长度,分配多个线程;
通过所述多个线程分别向与所述下载链接对应的第二服务器发起下载所述目标文件的HTTP请求;
通过所述多个线程分别接收所述第二服务器返回的HTTP响应头信息,所述HTTP响应头信息包括当前文件的第二总字节长度;
当所述第一总字节长度与所述第二总字节长度一致时,每个线程分别开始下载所述当前文件。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:当判定出所述第一总字节长度与所述第二总字节长度不一致时,判定出不一致的线程再次向所述下载链接对应的第二服务器发起HTTP请求。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:在所述判定出不一致的线程向所述下载链接对应的第二服务器发起预设次数的HTTP请求之后,所述第一总字节长度与所述第二总字节长度仍不一致时,所述判定出不一致的线程向所述下载链接对应的第二服务器发起HTTPS请求。
11.根据权利要求1所述的方法,其特征在于,所述第一服务器与所述第二服务器为同一服务器。
12.一种下载文件的装置,其特征在于,所述装置包括:
第一接收模块,用于接收第一服务器返回的下载链接,所述下载链接包括目标文件的第一总字节长度;
发送模块,用于向与所述下载链接对应的第二服务器发起下载所述目标文件的HTTP请求;
第二接收模块,用于接收所述第二服务器返回的HTTP响应头信息,所述HTTP响应头信息包括当前文件的第二总字节长度;
下载模块,用于当所述第一总字节长度与所述第二总字节长度一致时,开始下载所述当前文件。
13.根据权利要求12所述的装置,其特征在于,所述装置还包括:第一请求模块,
所述第一请求模块,用于当所述第一总字节长度与所述第二总字节长度不一致时,再次向所述下载链接对应的第二服务器发起HTTP请求。
14.根据权利要求12所述的装置,其特征在于,所述装置还包括:第二请求模块,
所述第二请求模块,用于向所述下载链接对应的第二服务器发起预设次数的HTTP请求后,所述第一总字节长度与所述第二总字节长度仍不一致时,则向所述下载链接对应的第二服务器发起HTTPS请求。
15.根据权利要求12所述的装置,其特征在于,所述第一接收模块接收到的所述下载链接还包括下载文件的第一数字签名,所述装置还包括判断模块,
所述判断模块,用于在所述下载模块开始下载所述当前文件之后,当所述当前文件下载完成后,计算所述当前文件的第二数字签名;判断所述第一数字签名与所述第二数字签名是否一致,如果一致,则判定所述当前文件为所述目标文件,下载成功,否则,下载失败。
16.根据权利要求12所述的装置,其特征在于,所述装置还包括分配模块,所述分配模块用于根据所述第一总字节长度,分配多个线程;所述发送模块,还用于通过所述多个线程分别向与所述下载链接对应的第二服务器发起下载所述目标文件的HTTP请求;所述第二接收模块,还用于通过所述多个线程分别接收所述第二服务器返回的HTTP响应头信息,所述HTTP响应头信息包括当前文件的第二总字节长度;所述下载模块,还用于当所述第一总字节长度与所述第二总字节长度一致时,每个线程分别开始下载所述当前文件。
17.根据权利要求16所述的装置,其特征在于,所述第一请求模块,还用于当判定出所述第一总字节长度与所述第二总字节长度不一致时,判定出不一致的线程再次向所述下载链接对应的第二服务器发起HTTP请求。
18.根据权利要求17所述的装置,其特征在于,所述第二请求模块,还用于在所述判定出不一致的线程向所述下载链接对应的第二服务器发起预设次数的HTTP请求之后,所述第一总字节长度与所述第二总字节长度仍不一致时,所述判定出不一致的线程向所述下载链接对应的第二服务器发起HTTPS请求。
19.一种用户终端,其特征在于,所述用户终端包括处理器以及存储器,所述存储器耦接到所述处理器,所述存储器存储指令,当所述指令由所述处理器执行时使所述用户终端执行以下操作:
接收第一服务器返回的下载链接,所述下载链接包括目标文件的第一总字节长度;
向与所述下载链接对应的第二服务器发起下载所述目标文件的HTTP请求;
接收所述第二服务器返回的HTTP响应头信息,所述HTTP响应头信息包括当前文件的第二总字节长度;
当所述第一总字节长度与所述第二总字节长度一致时,开始下载所述当前文件。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610345945.6A CN105897911A (zh) | 2016-05-20 | 2016-05-20 | 下载文件的方法、装置及用户终端 |
PCT/CN2017/083270 WO2017198079A1 (zh) | 2016-05-20 | 2017-05-05 | 下载文件的方法、装置、用户终端及机器可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610345945.6A CN105897911A (zh) | 2016-05-20 | 2016-05-20 | 下载文件的方法、装置及用户终端 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105897911A true CN105897911A (zh) | 2016-08-24 |
Family
ID=56717164
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610345945.6A Pending CN105897911A (zh) | 2016-05-20 | 2016-05-20 | 下载文件的方法、装置及用户终端 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN105897911A (zh) |
WO (1) | WO2017198079A1 (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106982249A (zh) * | 2017-03-03 | 2017-07-25 | 广州优视网络科技有限公司 | 多线程分段下载方法、设备、客户端设备及电子设备 |
WO2017198079A1 (zh) * | 2016-05-20 | 2017-11-23 | 广州优视网络科技有限公司 | 下载文件的方法、装置、用户终端及机器可读存储介质 |
CN109240721A (zh) * | 2018-08-24 | 2019-01-18 | 江苏恒宝智能***技术有限公司 | 一种mcu在线升级的方法 |
CN109496418A (zh) * | 2018-05-31 | 2019-03-19 | 优视科技新加坡有限公司 | 文件下载方法、装置及设备/终端/服务器 |
CN109639666A (zh) * | 2018-12-07 | 2019-04-16 | 国能日新科技股份有限公司 | 气象数据文件传输方法和装置 |
CN110311972A (zh) * | 2019-06-27 | 2019-10-08 | 百度在线网络技术(北京)有限公司 | 用于应用软件分发的检测方法、装置、设备及介质 |
CN115878676A (zh) * | 2023-02-08 | 2023-03-31 | 成都数联云算科技有限公司 | 一种预览文件的方法、装置、设备和介质 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111431851B (zh) * | 2020-02-18 | 2022-08-23 | 视联动力信息技术股份有限公司 | 数据包下载方法、装置及可读存储介质 |
CN114422499B (zh) * | 2021-12-27 | 2023-12-05 | 北京奇艺世纪科技有限公司 | 一种文件下载方法、***及装置 |
CN115086297B (zh) * | 2022-05-30 | 2023-05-16 | 一点灵犀信息技术(广州)有限公司 | 文件处理方法及设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101656754A (zh) * | 2008-08-21 | 2010-02-24 | 北京亿企通信息技术有限公司 | 一种在即时通信工具中穿越防火墙的方法 |
US20130246583A1 (en) * | 2012-03-14 | 2013-09-19 | Canon Kabushiki Kaisha | Method, system and server device for transmitting a digital resource in a client-server communication system |
CN103401836A (zh) * | 2013-07-01 | 2013-11-20 | 北京卓易讯畅科技有限公司 | 一种用于判断网页是否被isp劫持的方法与设备 |
CN103885806A (zh) * | 2014-04-02 | 2014-06-25 | 深圳市兰丁科技有限公司 | 机顶盒的***软件在线升级的实现方法和装置 |
CN104079673A (zh) * | 2014-07-30 | 2014-10-01 | 北京奇虎科技有限公司 | 一种应用下载中防止dns劫持的方法、装置和*** |
CN104506950A (zh) * | 2014-12-29 | 2015-04-08 | 珠海全志科技股份有限公司 | 网络流媒体播放中的多线程下载方法、装置及下载设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105302617A (zh) * | 2015-11-25 | 2016-02-03 | 魅族科技(中国)有限公司 | 一种下载应用程序的方法及服务器 |
CN105516246B (zh) * | 2015-11-25 | 2019-03-26 | 魅族科技(中国)有限公司 | 一种防应用程序下载劫持的方法及服务器 |
CN105897911A (zh) * | 2016-05-20 | 2016-08-24 | 广州优视网络科技有限公司 | 下载文件的方法、装置及用户终端 |
-
2016
- 2016-05-20 CN CN201610345945.6A patent/CN105897911A/zh active Pending
-
2017
- 2017-05-05 WO PCT/CN2017/083270 patent/WO2017198079A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101656754A (zh) * | 2008-08-21 | 2010-02-24 | 北京亿企通信息技术有限公司 | 一种在即时通信工具中穿越防火墙的方法 |
US20130246583A1 (en) * | 2012-03-14 | 2013-09-19 | Canon Kabushiki Kaisha | Method, system and server device for transmitting a digital resource in a client-server communication system |
CN103401836A (zh) * | 2013-07-01 | 2013-11-20 | 北京卓易讯畅科技有限公司 | 一种用于判断网页是否被isp劫持的方法与设备 |
CN103885806A (zh) * | 2014-04-02 | 2014-06-25 | 深圳市兰丁科技有限公司 | 机顶盒的***软件在线升级的实现方法和装置 |
CN104079673A (zh) * | 2014-07-30 | 2014-10-01 | 北京奇虎科技有限公司 | 一种应用下载中防止dns劫持的方法、装置和*** |
CN104506950A (zh) * | 2014-12-29 | 2015-04-08 | 珠海全志科技股份有限公司 | 网络流媒体播放中的多线程下载方法、装置及下载设备 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017198079A1 (zh) * | 2016-05-20 | 2017-11-23 | 广州优视网络科技有限公司 | 下载文件的方法、装置、用户终端及机器可读存储介质 |
CN106982249A (zh) * | 2017-03-03 | 2017-07-25 | 广州优视网络科技有限公司 | 多线程分段下载方法、设备、客户端设备及电子设备 |
WO2018157850A1 (zh) * | 2017-03-03 | 2018-09-07 | 广州优视网络科技有限公司 | 多线程分段下载方法、设备、客户端设备、电子设备及存储介质 |
CN109496418A (zh) * | 2018-05-31 | 2019-03-19 | 优视科技新加坡有限公司 | 文件下载方法、装置及设备/终端/服务器 |
CN109240721A (zh) * | 2018-08-24 | 2019-01-18 | 江苏恒宝智能***技术有限公司 | 一种mcu在线升级的方法 |
CN109639666A (zh) * | 2018-12-07 | 2019-04-16 | 国能日新科技股份有限公司 | 气象数据文件传输方法和装置 |
CN109639666B (zh) * | 2018-12-07 | 2020-12-25 | 国能日新科技股份有限公司 | 气象数据文件传输方法和装置 |
CN110311972A (zh) * | 2019-06-27 | 2019-10-08 | 百度在线网络技术(北京)有限公司 | 用于应用软件分发的检测方法、装置、设备及介质 |
CN110311972B (zh) * | 2019-06-27 | 2022-02-22 | 百度在线网络技术(北京)有限公司 | 用于应用软件分发的检测方法、装置、设备及介质 |
CN115878676A (zh) * | 2023-02-08 | 2023-03-31 | 成都数联云算科技有限公司 | 一种预览文件的方法、装置、设备和介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2017198079A1 (zh) | 2017-11-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105897911A (zh) | 下载文件的方法、装置及用户终端 | |
US11076295B2 (en) | Remote management method, and device | |
CN104216748B (zh) | 应用程序安装方法、装置及*** | |
CN104935593A (zh) | 数据报文的传输方法及装置 | |
CN104199654A (zh) | 开放平台的调用方法及装置 | |
CN104935594A (zh) | 基于虚拟可扩展局域网隧道的报文处理方法及装置 | |
CN108809960A (zh) | 一种文件上传及下载方法、装置、设备、***及存储介质 | |
CN105871805A (zh) | 防盗链的方法及装置 | |
CN111597567B (zh) | 数据处理方法、装置、节点设备及存储介质 | |
CN109525592A (zh) | 数据共享方法、装置、设备及计算机可读存储介质 | |
CN105119928A (zh) | 安卓智能终端的数据传输方法、装置及*** | |
CN112784823B (zh) | 人脸图像识别方法、装置、计算设备和介质 | |
KR20180005542A (ko) | 데이터 무결성 검증을 위한 장치 및 방법 | |
CN104580112A (zh) | 一种业务认证方法、***及服务器 | |
CN109995876A (zh) | 文件传输方法、装置、***和计算机存储介质 | |
US20160006708A1 (en) | Information processing apparatus and mobile terminal device | |
CN109408463A (zh) | 文件分布式存储方法及装置、节点服务器 | |
CN110046000B (zh) | 小程序运行方法和装置 | |
CN104023073A (zh) | 一种资源的推送方法、***及装置 | |
CN111478974A (zh) | 网络连接方法及装置、电子设备和可读存储介质 | |
CN111400743B (zh) | 基于区块链网络的事务处理方法、装置、电子设备和介质 | |
CN111181905B (zh) | 文件加密方法及装置 | |
CN105653054A (zh) | 一种密码处理方法及装置 | |
CN106254440A (zh) | 一种ap的升级方法和装置 | |
CN113709188B (zh) | 会话控制信息处理方法、装置、***和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160824 |