Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
RESOURCE DOWNLOADING METHOD, ELECTRONIC DEVICE, AND APPARATUS
Document Type and Number:
WIPO Patent Application WO/2016/029384
Kind Code:
A1
Abstract:
A resource downloading method, an electronic device, and an apparatus. The resource downloading method comprises: a client module (101) in the electronic device initiates a first request with a server (S101); the client module (101) receives a packet generated on the basis of the first request by the server and returned thereby, where the packet comprises an entity data section corresponding to the first request (S102); when the entity data section of the packet is determined to be a downloaded resource, the client module (101) writes the downloaded resource into a first storage area (30) of the electronic device (S103); the client module (101) notifies a download provider module (102) in the electronic device, and the download provider module (102) reads from the first storage area (30) the downloaded resource and stores same into a second storage area (40) of the electronic device (S104).

Inventors:
ZHOU TAO (CN)
Application Number:
PCT/CN2014/085306
Publication Date:
March 03, 2016
Filing Date:
August 27, 2014
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
HUAWEI TECH CO LTD (CN)
International Classes:
H04L29/06
Domestic Patent References:
WO2010048803A12010-05-06
Foreign References:
CN101442558A2009-05-27
CN102857514A2013-01-02
CN1909461A2007-02-07
Attorney, Agent or Firm:
TDIP & PARTNERS (CN)
北京同达信恒知识产权代理有限公司 (CN)
Download PDF:
Claims:
权 利 要 求

1、 一种资源下载方法, 应用于一电子设备中, 其特征在于, 所述方法包 括:

所述电子设备中的客户端模块向服务器发起第一请求;

所述客户端模块接收所述服务器基于所述第一请求生成并返回的报文, 所述 "^文包括与所述第一请求对应的实体数据部分;

在判定所述报文的实体数据部分为下载资源时, 所述客户端模块向所述 电子设备的第一存储区域写入所述下载资源;

所述客户端模块通知所述电子设备中的下载管理模块, 所述下载管理模 块从所述第一存储区域中读取所述下载资源并存储到所述电子设备的第二存 储区域中。

2、 如权利要求 1所述的方法, 其特征在于, 所述电子设备还包括緩存服 务模块;

所述客户端模块向所述电子设备的第一存储区域写入所述下载资源, 包 括:

所述客户端模块通过所述緩存服务模块向所述第一存储区域写入所述下 载资源;

所述下载管理模块从所述第一存储区域中读取所述下载资源并存储到所 述电子设备的第二存储区域中, 包括:

所述下载管理模块通过所述緩存服务模块从所述第一存储区域中读取所 述下载资源;

所述下载管理模块存储所述下载资源到所述第二存储区域中。

3、 如权利要求 2所述的方法, 其特征在于, 所述报文还包括报文头部信 息, 所述客户端模块通过所述緩存服务模块向所述第一存储区域写入所述下 载资源, 包括:

所述客户端模块接收到所述报文头部信息时, 根据所述报文头部信息判 定所述实体数据部分是否为下载资源;

在判定所述实体数据部分为下载资源时, 所述客户端模块接收所述实体 数据部分;

所述客户端模块通过所述緩存服务模块将接收到的所述实体数据部分的 数据写入到所述第一存储区域, 以使得所述客户端模块向所述第一存储区域 写入所述下载资源。

4、 如权利要求 3所述的方法, 其特征在于, 所述客户端模块通知所述电 子设备中的下载管理模块, 包括:

所述客户端模块根据所述报文头部信息和所述下载资源的统一资源定位 符 URL生成第一标识信息;

所述客户端模块将所述第一标识信息写入与所述下载管理模块关联的下 载记录数据库中, 所述第一标识信息用于所述下载管理模块获得与所述下载 资源对应的下载请求。

5、 如权利要求 4所述的方法, 其特征在于, 所述下载管理模块通过所述 緩存服务模块从所述第一存储区域中读取所述下载资源, 包括:

所述下载管理模块响应所述下载请求, 在所述緩存服务模块中查询与所 述第一标识信息匹配的标识信息, 其中, 所述下载资源在所述緩存服务模块 中通过第二标识信息进行索引;

所述下载管理模块查询到与所述第一标识信息匹配的所述第二标识信息 时, 通过所述緩存服务模块从所述第一存储区域读出与所述第二标识信息所 对应的下载资源。

6、 如权利要求 5所述的方法, 其特征在于, 在所述客户端模块将所述第 一标识信息写入与所述下载管理模块关联的下载记录数据库中之后, 所述方 法还包括:

所述下载管理模块在所述緩存服务模块中查询与所述第一标识信息匹配 的标识信息失败时,从所述第一标识信息中确定出所述 URL, 所述 URL用于 所述服务器获取所述下载资源;

所述下载管理模块根据所述 URL向所述服务器发送第二请求, 所述第二 请求用于请求所述服务器向所述下载管理模块返回所述下载资源。

7、 一种电子设备, 其特征在于, 包括:

第一发送单元, 用于控制所述电子设备中的客户端模块向服务器发起第 一请求;

接收单元, 用于控制所述客户端模块接收所述服务器基于所述第一请求 生成并返回的报文, 所述报文包括与所述第一请求对应的实体数据部分; 写入单元, 用于在判定所述报文的实体数据部分为下载资源时, 控制所 述客户端模块向所述电子设备的第一存储区域写入所述下载资源;

读取单元, 用于控制所述客户端模块通知所述电子设备中的下载管理模 块, 并控制所述下载管理模块从所述第一存储区域中读取所述下载资源并存 储到所述电子设备的第二存储区域中。

8、 如权利要求 7所述的电子设备, 其特征在于, 所述电子设备还包括緩 存服务模块时;

所述写入单元, 用于控制所述客户端模块通过所述緩存服务模块向所述 第一存储区域写入所述下载资源;

所述读取单元, 用于:

控制所述下载管理模块通过所述緩存服务模块从所述第一存储区域中读 取所述下载资源;

控制所述下载管理模块存储所述下载资源到所述第二存储区域中。

9、 如权利要求 8所述的电子设备, 其特征在于, 所述报文还包括报文头 部信息, 所述写入单元, 用于

在所述客户端模块接收到所述报文头部信息时, 根据所述报文头部信息 判定所述实体数据部分是否为下载资源;

在判定所述实体数据部分为下载资源时, 控制所述客户端模块接收所述 实体数据部分;

控制所述客户端模块通过所述緩存服务模块将接收到的所述实体数据部 分的数据写入到所述第一存储区域, 以使得所述客户端模块向所述第一存储 区域写入所述下载资源。

10、 如权利要求 9 所述的电子设备, 其特征在于, 所述写入单元, 还用 于:

控制所述客户端模块根据所述报文头部信息和所述下载资源的统一资源 定位符 URL生成第一标识信息;

控制所述客户端模块将所述第一标识信息写入与所述下载管理模块关联 的下载记录数据库中, 所述第一标识信息用于所述下载管理模块获得与所述 下载资源对应的下载请求。

11、 如权利要求 10所述的电子设备, 其特征在于, 所述读取单元, 用于: 控制所述下载管理模块响应所述下载请求, 在所述緩存服务模块中查询 与所述第一标识信息匹配的标识信息, 其中, 所述下载资源在所述緩存服务 模块中通过第二标识信息进行索引;

在所述下载管理模块查询到与所述第一标识信息匹配的所述第二标识信 息时, 控制通过所述緩存服务模块从所述第一存储区域读出与所述第二标识 信息所对应的下载资源。

12、如权利要求 11所述的电子设备, 其特征在于, 所述电子设备还包括: 确定单元, 用于所述下载管理模块在所述緩存服务模块中查询与所述第 一标识信息匹配的标识信息失败时 ,从所述第一标识信息中确定出所述 URL , 所述 URL用于所述服务器获取所述下载资源;

第二发送单元, 用于控制所述下载管理模块根据所述 URL向所述服务器 发送第二请求, 所述第二请求用于请求所述服务器向所述下载管理模块返回 所述下载资源。

Description:
一种资源下载方法、 电子设备及装置 技术领域 本发明涉及电子技术领域, 具体涉及一种资源下载方法、 电子设备及装 置。 背景技术 目前, Android (安卓) 系统自带了一个名为 DownloadProvider (下载管 理器)的 APK ( Android Package, 安卓安装包), 用于下载音频, 视频, 文字, 安装包等资源。

用户在客户端(比如,浏览器)中输入网址后 ,客户端基于 HTTP( Hypertext transfer protocol, 超文本传输协议) 向服务器发出 GET请求, 以从网络获取 数据, GET请求方法要求服务器将 URL ( uniform resource locator, 统一资源 定位符) 定位的资源放在报文的实体数据部分返回给客 户端。 客户端接收到 报文的报文头部信息时解析报文头部信息来判 定 GET请求所请求的资源为下 载资源还是网页等其他形式的资源, 即判定出报文的实体数据部分是下载资 源还是网页资源等其他形式的资源。 当判定出实体数据部分为下载资源时就 停止资源加载,并且客户端将下载资源的下载 链接地址写入 DownloadProvider 所对应的下载记录数据库。 DownloadProvider监听到下载记录数据库中的下载 请求后取出这条待下载记录, DownloadProvider根据这条下载记录中的下载链 接地址向服务器发出 GET请求, 服务器响应 DownloadProvider的 GET请求, 服务器将下载资源放在实体数据部分返回给 DownloadProvider。 当 DownloadProvider接收到报文头部信息时解析报文 部信息来判定 GET请求 所请求的资源为下载资源是否为下载资源, 在为下载资源通过 DownloadProvider将下载资源从服务器直接下载到 储区。

由此可以看出, 在现有技术中, 假如通过客户端发送的用于获取下载资 源的请求来下载资源, 客户端请求进行资源下载的整个过程需要向服 务器发 起两次 GET请求, 则服务器需要对电子设备做出两次回应, 两次回应均至少 需要返回报文头部信息来判断所请求资源是否 为下载资源, 显然这两次 GET 请求和两次回应会导致网络负载加重以及流量 浪费的问题。

发明内容

本发明实施例提供了一种资源下载方法, 电子设备及装置。 用于解决现 有技术中导致的网络负载加重以及流量浪费的 技术问题。 第一方面, 本发明实施例提供了一种资源下载方法, 应用于一电子设备 中, 所述方法包括: 所述电子设备中的客户端模块向服务器发起第 一请求;

所述客户端模块接收所述服务器基于所述第一 请求生成并返回的报文, 所述 "^文包括与所述第一请求对应的实体数据部分 在判定所述报文的实体数据部分为下载资源时 , 所述客户端模块向所述 电子设备的第一存储区域写入所述下载资源;

所述客户端模块通知所述电子设备中的下载管 理模块, 所述下载管理模 块从所述第一存储区域中读取所述下载资源并 存储到所述电子设备的第二存 储区域中。 结合第一方面, 在第一种可能的实现方式中, 所述电子设备还包括緩存 服务模块;

所述客户端模块向所述电子设备的第一存储区 域写入所述下载资源, 包 括:

所述客户端模块通过所述緩存服务模块向所述 第一存储区域写入所述下 载资源;

所述下载管理模块从所述第一存储区域中读取 所述下载资源并存储到所 述电子设备的第二存储区域中, 包括:

所述下载管理模块通过所述緩存服务模块从所 述第一存储区域中读取所 述下载资源; 所述下载管理模块存储所述下载资源到所述第 二存储区域中。 结合第一方面的第一种可能的实现方式, 在第二种可能的实现方式中, 所述报文还包括报文头部信息, 所述客户端模块通过所述緩存服务模块向所 述第一存储区域写入所述下载资源, 包括:

所述客户端模块接收到所述报文头部信息时, 根据所述报文头部信息判 定所述实体数据部分是否为下载资源;

在判定所述实体数据部分为下载资源时, 所述客户端模块接收所述实体 数据部分;

所述客户端模块通过所述緩存服务模块将接收 到的所述实体数据部分的 数据写入到所述第一存储区域, 以使得所述客户端模块向所述第一存储区域 写入所述下载资源。

结合第一方面的第二种可能的实现方式, 在第三种可能的实现方式中, 所述客户端模块通知所述电子设备中的下载管 理模块, 包括:

所述客户端模块根据所述报文头部信息和所述 下载资源的统一资源定位 符 URL生成第一标识信息;

所述客户端模块将所述第一标识信息写入与所 述下载管理模块关联的下 载记录数据库中, 所述第一标识信息用于所述下载管理模块获得 与所述下载 资源对应的下载请求。

结合第一方面的第三种可能的实现方式, 在第四种可能的实现方式中, 所述下载管理模块通过所述緩存服务模块从所 述第一存储区域中读取所述下 载资源, 包括:

所述下载管理模块响应所述下载请求, 在所述緩存服务模块中查询与所 述第一标识信息匹配的标识信息, 其中, 所述下载资源在所述緩存服务模块 中通过第二标识信息进行索引;

所述下载管理模块查询到与所述第一标识信息 匹配的所述第二标识信息 时, 通过所述緩存服务模块从所述第一存储区域读 出与所述第二标识信息所 对应的下载资源。

结合第一方面的第四种可能的实现方式, 在第五种可能的实现方式中, 在所述客户端模块将所述第一标识信息写入与 所述下载管理模块关联的下载 记录数据库中之后, 所述方法还包括:

所述下载管理模块在所述緩存服务模块中查询 与所述第一标识信息匹配 的标识信息失败时,从所述第一标识信息中确 定出所述 URL, 所述 URL用于 所述服务器获取所述下载资源;

所述下载管理模块根据所述 URL向所述服务器发送第二请求, 所述第二 请求用于请求所述服务器向所述下载管理模块 返回所述下载资源。

第二方面, 本发明实施例提供了一种电子设备, 包括:

第一发送单元, 用于控制所述电子设备中的客户端模块向服务 器发起第 一请求;

接收单元, 用于控制所述客户端模块接收所述服务器基于 所述第一请求 生成并返回的报文, 所述报文包括与所述第一请求对应的实体数据 部分; 写入单元, 用于在判定所述报文的实体数据部分为下载资 源时, 控制所 述客户端模块向所述电子设备的第一存储区域 写入所述下载资源;

读取单元, 用于控制所述客户端模块通知所述电子设备中 的下载管理模 块, 并控制所述下载管理模块从所述第一存储区域 中读取所述下载资源并存 储到所述电子设备的第二存储区域中。

结合第二方面, 在第一种可能的实现方式中, 所述电子设备还包括緩存 服务模块时; 所述写入单元, 用于控制所述客户端模块通过所述緩存服务模 块向所述第一存储区域写入所述下载资源;

所述读取单元, 用于控制所述下载管理模块通过所述緩存服务 模块从所 述第一存储区域中读取所述下载资源; 控制所述下载管理模块存储所述下载 资源到所述第二存储区域中。

结合第二方面的第一种可能的实现方式, 在第二种可能的实现方式中, 所述报文还包括报文头部信息, 所述写入单元, 用于:

在所述客户端模块接收到所述报文头部信息时 , 根据所述报文头部信息 判定所述实体数据部分是否为下载资源;

在判定所述实体数据部分为下载资源时, 控制所述客户端模块接收所述 实体数据部分;

控制所述客户端模块通过所述緩存服务模块将 接收到的所述实体数据部 分的数据写入到所述第一存储区域, 以使得所述客户端模块向所述第一存储 区域写入所述下载资源。

结合第二方面的第二种可能的实现方式, 在第三种可能的实现方式中, 所述写入单元, 还用于:

控制所述客户端模块根据所述报文头部信息和 所述下载资源的统一资源 定位符 URL生成第一标识信息;

控制所述客户端模块将所述第一标识信息写入 与所述下载管理模块关联 的下载记录数据库中, 所述第一标识信息用于所述下载管理模块获得 与所述 下载资源对应的下载请求。

结合第二方面的第三种可能的实现方式, 在第四种可能的实现方式中, 所述读取单元, 用于:

控制所述下载管理模块响应所述下载请求, 在所述緩存服务模块中查询 与所述第一标识信息匹配的标识信息, 其中, 所述下载资源在所述緩存服务 模块中通过第二标识信息进行索引;

在所述下载管理模块查询到与所述第一标识信 息匹配的所述第二标识信 息时, 控制通过所述緩存服务模块从所述第一存储区 域读出与所述第二标识 信息所对应的下载资源。

结合第二方面的第四种可能的实现方式, 在第五种可能的实现方式中, 所述电子设备还包括:

确定单元, 用于所述下载管理模块在所述緩存服务模块中 查询与所述第 一标识信息匹配的标识信息失败时 ,从所述第一标识信息中确定出所述 URL , 所述 URL用于所述服务器获取所述下载资源;

第二发送单元, 用于控制所述下载管理模块根据所述 URL向所述服务器 发送第二请求, 所述第二请求用于请求所述服务器向所述下载 管理模块返回 所述下载资源。

第三方面, 本发明实施例提供了一种电子设备, 包括收发器; 输入装置; 处理器; 所述处理器用于控制所述电子设备中的客户端 模块执行: 向服务器 发起第一请求; 接收所述服务器基于所述第一请求生成并返回 的报文, 所述 报文包括与所述第一请求对应的实体数据部分 ; 判定所述报文的实体数据部 分为下载资源时, 向所述电子设备的第一存储区域写入所述下载 资源; 通知 所述电子设备中的下载管理模块;

所述处理器还用于控制所述下载管理模块执行 : 从所述第一存储区域中 读取所述下载资源并存储到所述电子设备的第 二存储区域中。

结合第三方面, 在第一种可能的实现方式中, 所述电子设备还包括緩存 服务模块时, 所述处理器用于控制所述客户端模块通过所述 緩存服务模块向 所述第一存储区域写入所述下载资源;

所述处理器用于控制所述下载管理模块执行:

通过所述緩存服务模块从所述第一存储区域中 读取所述下载资源; 存储所述下载资源到所述第二存储区域中。

结合第三方面的第一种可能的实现方式, 在第二种可能的实现方式中, 所述报文还包括报文头部信息, 所述处理器还用于控制所述客户端模块执行: 接收到所述报文头部信息时, 根据所述报文头部信息判定所述实体数据 部分是否为下载资源;

在判定所述实体数据部分为下载资源时, 接收所述实体数据部分; 通过所述緩存服务模块将接收到的所述实体数 据部分的数据写入到所述 第一存储区域, 以使得所述客户端模块向所述第一存储区域写 入所述下载资 源。

结合第三方面的第二种可能的实现方式, 在第三种可能的实现方式中, 所述处理器用于控制所述客户端执行:

根据所述报文头部信息和所述下载资源的统一 资源定位符 URL生成第一 标识信息;

将所述第一标识信息写入与所述下载管理模块 关联的下载记录数据库 中, 所述第一标识信息用于所述下载管理模块获得 与所述下载资源对应的下 载请求。

结合第三方面的第三种可能的实现方式, 在第四种可能的实现方式中, 所述处理器用于控制所述下载管理模块执行:

响应所述下载请求, 在所述緩存服务模块中查询与所述第一标识信 息匹 配的标识信息, 其中, 所述下载资源在所述緩存服务模块中通过第二 标识信 息进行索引;

查询到与所述第一标识信息匹配的所述第二标 识信息时, 通过所述緩存 服务模块从所述第一存储区域读出与所述第二 标识信息所对应的下载资源。

结合第三方面的第四种可能的实现方式, 在第五种可能的实现方式中, 所述处理器还用于控制所述下载管理模块执行 :

在所述緩存服务模块中查询与所述第一标识信 息匹配的标识信息失败 时,从所述第一标识信息中确定出所述 URL, 所述 URL用于所述服务器获取 所述下载资源;

根据所述 URL向所述服务器发送第二请求, 所述第二请求用于请求所述 服务器向所述下载管理模块返回所述下载资源 。

本发明实施例提供的技术方案, 至少具有如下技术效果或优点: 由于釆用了电子设备中的客户端模块向服务器 发起第一请求; 客户端模 块接收服务器基于第一请求生成并返回的报文 , 报文包括与第一请求对应的 实体数据部分; 在判定报文的实体数据部分为下载资源时, 客户端模块向电 子设备的第一存储区域写入下载资源; 客户端模块通知电子设备中的下载管 理模块, 下载管理模块从第一存储区域中读取下载资源 并存储到电子设备的 第二存储区域中技术手段, 由此可以看出, 本发明存储服务器响应的数据到 第一存储区域, 并通知下载管理模块从第一存储区域取回所需 实体数据部分 来实现了将下载资源下载到第二存储区域。 整个下载过程, 电子设备仅需要 向服务器发起一次请求, 服务器也只需要回应一次就能获得下载资源, 从而 减轻了网络负载, 避免了流量浪费的问题。

附图说明

图 1为本发明实施例中电子设备的架构图;

图 2为本发明实施例中资源下载方法的流程图;

图 3A为本发明实施例中资源下载方法的优选实施 式的交互示意图; 图 3B为本发明实施例中资源下载方法的交互流程 ;

图 4为本发明实施例中实现资源下载的电子设备 模块图。

具体实施方式 为了解决现有技术中的资源下载方案会导致的 网络负载加重以及流量浪 费的技术问题, 本发明实施例提出了一种资源下载方法, 电子设备及装置。

为使本发明实施例的目的、 技术方案和优点更加清楚, 下面将结合本发 明实施例中的附图, 对本发明实施例中的技术方案进行清楚、 完整地描述, 显然, 所描述的实施例是本发明一部分实施例, 而不是全部的实施例。 基于 本发明中的实施例, 本领域普通技术人员在没有作出创造性劳动前 提下所获 得的所有其他实施例, 都属于本发明保护的范围。

下面结合附图对本发明优选的实施方式进行详 细说明。

如图 1所示, 图 1为本发明实施例中电子设备的架构图, 该电子设备包 括: 上层应用模块 10 , 以及支持上层应用模块 10的处理器 20 , 第一存储区 域 30和第二存储区域 40。 具体的, 上层应用模块 10包括客户端模块 101 , 下载管理模块 102和緩存服务模块 103。 具体的,客户端模块 101可以为浏览 器模块, 即时通讯模块等等, 该电子设备可以是基于 Android系统的一种电子 设备, 比如 Android智能手机, Android平板电脑等, 但是本发明实施例提出 的流程并不限于应用于 Android系统的电子设备。

参考图 2所示, 本发明实施例提供了一种资源下载方法, 可以应用于图 1 所示的电子设备中, 该资源下载方法包括如下流程:

5101、 电子设备中的客户端模块向服务器发起第一请 求。

具体的, 第一请求用于请求从服务器获取资源。 在具体实施过程, 第一 请求可以为 HTTP协议中的 "get请求", 当然, 在其他协议下也可以为其他 形式的用于从网络侧获取资源的请求。 其中, 第一请求包括电子设备资源的 URL。 服务器根据 URL从互联网找到 URL所定位的资源。

5102、 客户端模块接收服务器基于第一请求生成并返 回的报文, 报文包 括与第一请求对应的实体数据部分。

具体的, 返回的报文包括报文头部信息和与第一请求对 应的实体数据部 分, 服务器首先返回报文的报文头部信息, 其中, 报文头部信息中的 "Content-Type "和 "Content-Disposition" 两个字段用来表示实体数据部分为 下载资源, 网页资源等资源类型中的哪一种。

5103、 在判定报文的实体数据部分为下载资源时, 客户端模块向电子设 备的第一存储区域写入下载资源。

具体的, 电子设备还包括緩存服务模块, 客户端模块通过緩存服务模块 向第一存储区域写入下载资源。 在具体实施过程中, 第一存储区域所指为緩 存区域, 比如 RAM存储单元。

进一步具体来讲, 客户端模块在没有接收到报文的实体数据部分 时, 已 经接收到报文头部信息, 根据报文头部信息中的 " Content-Type "和

"Content-Disposition" 两个字段来判定出实体数据部分为下载资源。 其中, 第一请求可以为 HTTP协议中的 "get请求", 当然, 在其他协议下也可以为 其他形式的用于从网络侧获取资源的请求。 报文的实体数据部分为网页资源 时, 客户端模块接收实体数据部分并直接加载为网 页。

在具体实施过程中, 为了下载管理模块能在緩存服务模块中查询到 正确 的下载资源, 才艮据下载资源的 URL生成一个用于标识该下载资源的标识信息 对写入第一存储区域的下载资源进行索引。 具体生成用于标识该下载资源的 标识信息的方式有多种, 生成标识信息的实施方式一为: 由 URL和緩存月良务 模块标识共同组成的标识信息, 比如, 下载资源的 URL 为 " http: //finance . chinane ws . com/it/5983282. shtml " , 緩存服务模块的标识为 " HC-100A " , 则下载资源在緩存服务模块中的标识信息可以 为 "http://127.0.0.1/HC-100A/finance.chinanews.com/it/5983282. shtml , 当然本领 域技术人员可以知晓其他根据緩存服务模块和 URL组成标识信息的形式。 生 成标识信息的实施方式二为: 标识信息也可以为根据下载资源被写入第一存 储区域的顺序对下载资源增加序号而生成的标 识信息, 比如形成的标识信息 URL1 , "URL2 , URL3... " 依次为: "http:〃www.so.com〃shehui/.shtml... l"、 "http://www.so. com/...2" ¾ "http://www.docin.com/search....3"等等。 当然, 在 具体实施过程中, 本领域技术人员可以知晓其他根据下载资源被 写入第一存 储区域的顺序和 URL组成标识信息的形式, 同时知晓可以在 URL上增加其 他信息来表示下载资源在緩存服务模块中的位 置的标识信息, 在此不进行一 一举例说明。

更进一步, 为了保证通过緩存服务模块对写入第一存储区 域的实体数据 部分能够被下载管理模块正确读出, 客户端向下载管理模块写入实体数据部 分的方式为阻塞模式(阻塞模式写入指緩存服 务模块对应的第一存储区域满 时, 其他实体数据部分等待写入)。

S104、 客户端模块通知电子设备中的下载管理模块, 下载管理模块从第 一存储区域中读取下载资源并存储到电子设备 的第二存储区域中。 具体的, 第二存储区域为与第一存储区域不同的存储区 域, 具体的, 可以指 ROM存储 区域。

具体的, S104包括步骤一: 客户端模块根据报文头部信息和下载资源的 统 URL生成第一标识信息;

具体来讲, 客户端模块根据下载资源的 URL生成表征下载资源在緩存服 务模块中位置和资源详情的第一标识信息, 报文头部信息中的至少一个字段 所表示的下载资源的资源数据量, 修改时间, 尺寸等资源详情中的至少一种。 在具体实施过程中, 客户端模块根据 URL生成第一标识信息的方式可以参考 前述生成对第一存储区域中的下载资源进行索 引的标识信息的实施方式, 为 了说明书的简洁, 在此不再赘述。

步骤二: 客户端模块将第一标识信息写入与下载管理模 块关联的下载记 录数据库中。 第一标识信息用于下载管理模块获得与下载资 源对应的下载请 求。

步骤三: 下载管理模块响应下载请求, 在緩存服务模块中查询与第一标 识信息匹配的标识信息, 其中, 下载资源在緩存服务模块中通过第二标识信 息进行索引;

具体的, 下载管理模块监听到下载请求时从下载记录数 据库取出获得的 下载请求对应的下载记录, 将下载记录中的第二标识信息与緩存服务模块 中 的至少一条标识信息进行匹配, 看是否能匹配到与第一标识信息匹配的第二 标识信息。

步骤四: 该下载资源在緩存服务模块中通过第二标识信 息进行索引, 则 下载管理模块查询到与第一标识信息匹配的第 二标识信息时, 通过緩存服务 模块从第一存储区域读出与第二标识信息所对 应的下载资源。

具体的, 下载管理模块与緩存服务模块通过 Socket (套接字)通信。 在 具体实施过程中, 下载管理模块在緩存服务模块中查询到与第一 标识信息匹 配的第二标识信息时, 緩存服务模块建立与下载管理模块的 Socket通信。 接 着, 下载管理模块向緩存服务模块发起用于请求发 送下载资源给下载管理模 块的请求给緩存服务模块, 其中, 该请求数据的请求可以为使用 HTTP协议 中的 get请求, 緩存服务模块响应下载管理模块向緩存服务模 块发起的 get请 求, 緩存服务模块从第一存储区域读出下载资源并 返回给下载管理模块。 在 具体实施过程, 与客户端模块与緩存服务模块之间通过阻塞模 式写入。 对应 的, 下载管理模块通过阻塞模式从第一存储区域读 出下载资源 (阻塞模式读 出为緩存服务模块对应的第一存储区域空时等 待读出还未写入第一存储区域 的实体数据部分)。 因为在实际应用中, 在下载过程中可能存在断网等异常情 况, 所以阻塞模式写入和阻塞模式读出的结合使用 , 能够保证一个下载资源 从网络侧经过客户端模块到第一存储区域, 再由第一存储区域径过下载管理 模块到第二存储区域的整个过程的准确, 避免下载资源中断或出错。

由于现有技术中的客户端所请求的下载资源需 要通过下载管理模块进行 下载。 所谓 UserAgent (用户代理), 是指客户端或下载管理模块的类型、 版 本号, 以及客户端或下载管理模块所使用的操作系统 及其操作系统版本号等 信息。 而客户端的 UserAgent与下载管理模块的 UserAgent可能存在不同的, 而现有一些服务器仅识别客户端的 UserAgent, 因此只能响应客户端发送的请 求, 而通过下载管理模块再次向同一服务器发送请 求时则不会响应, 因此将 会导致通过客户端请求的下载资源不能进行下 载。

而本发明实施例中的技术方案的只需要客户端 模块向服务器发起第一请 求, 因此, 即使服务器不支持下载管理模块的 UserAgent, 从而能够避免服务 器不兼容客户端模块和下载管理模块两者的 UserAgent 而导致的通过客户端 所请求的下载资源不能进行下载的问题, 提高了资源下载成功的概率。

优选地, 为了进一步提高本发明实施例中的技术方案下 载资源成功的概 率。 在客户端模块将标识信息写入下载管理模块之 后, 本发明实施例还提供 了如下流程: 下载管理模块在緩存服务模块中查询与第一标 识信息匹配的标 识信息失败时, 从第一标识信息中确定出 URL, URL用于服务器获取下载资 源; 下载管理模块根据 URL向服务器发送第二请求, 第二请求用于请求服务 器向下载管理模块返回下载资源。

具体来讲, 第二请求可以为 HTTP协议中的 get请求, 也可以为其他协议 中的其他形式的用于从互联网请求数据的请求 。 另外, 根据前述基于 URL生 成标识信息的规则, 反过来, 本领域技术人员可以知晓如何从标识信息中解 析出所需要的下载资源的 URL, 为了说明书的简洁, 在此不再赘述。

下面以客户端为浏览器, 服务器为 WEB服务器, 并基于 HTTP协议进行 数据传输为例, 结合图 3对本发明实施例中的技术方案进行举例说明 但是 不用于限制本发明。

S1 : 浏览器向 WEB服务器发送一 GET请求, GET请求包括浏览器所需 资源的 URL, GET请求用于请求 WEB服务器将 URL定位的资源放在 HTTP 响应报文的实体数据部分返回给浏览器。

S2: WEB服务器向浏览器返回报文头部信息。

S3: 浏览器解析 "Content-Disposition"字段和 "Content-Type" 字段来判 断当前需要接收的实体数据部分是否为下载资 源。

针对实体数据部分为网页资源, 执行 S4: 浏览器接收并加载到浏览器的 显示页面。

针对实体数据部分为下载资源, 执行 S5~S8:

S5: 浏览器将接收到的实体数据部分以阻塞模式通 过緩存服务模块写入 第一存储区域, 并以生成的第二标识信息对写第一存储区域的 下载资源进行 索引。

S6: 浏览器将报文头部信息和下载资源的 URL进行组装生成第一标识信 息并写入到下载管理模块的下载记录数据库中 , 从而下载管理模块监听到新 的下载请求。 在具体实施过程中, S5和 S6可以没有先后顺序, 为独立进行的 两个步骤。

S7: 下载管理模块监听到新的下载请求时, 从下载记录数据库中取出下 载记录, 到緩存服务模块中查询与第一标识信息匹配的 标识信息。 S8: 下载管理模块查询到与第一标识信息匹配的第 二位置标识时, 与緩 存服务模块建立 Socket通信, 以阻塞模式通过緩存服务模块从第一存储模块 中读出下载资源, 存储到第二存储区域。

基于同一发明构思, 本发明实施例还提供了一种电子设备, 参考图 4所 示, 该电子设备包括:

第一发送单元 301 ,用于控制所述电子设备中的客户端模块向服 器发起 第一请求;

接收单元 302 ,用于控制客户端模块接收服务器基于第一请 生成并返回 的报文, 报文包括与第一请求对应的实体数据部分;

写入单元 303 , 用于在判定报文的实体数据部分为下载资源时 ,控制客户 端模块向电子设备的第一存储区域写入下载资 源;

读取单元 304 , 用于控制客户端模块通知电子设备中的下载管 理模块, 并 控制下载管理模块从第一存储区域中读取下载 资源并存储到电子设备的第二 存储区域中。

优选的, 电子设备还包括緩存服务模块时; 写入单元 303 , 用于控制客户 端模块通过緩存服务模块向第一存储区域写入 下载资源;

读取单元 304 , 用于:

控制下载管理模块通过緩存服务模块从第一存 储区域中读取下载资源; 控制下载管理模块存储下载资源到第二存储区 域中。

优选的, 报文还包括报文头部信息, 写入单元 303 , 用于

在客户端模块接收到报文头部信息时, 根据报文头部信息判定实体数据 部分是否为下载资源;

在判定实体数据部分为下载资源时, 控制客户端模块接收实体数据部分; 控制客户端模块通过緩存服务模块将接收到的 实体数据部分的数据写入 到第一存储区域, 以使得客户端模块向第一存储区域写入下载资 源。

优选的, 写入单元 303 , 还用于: 控制客户端模块根据报文头部信息和下载资源 的统一资源定位符 URL生 成第一标识信息;

控制客户端模块将第一标识信息写入与下载管 理模块关联的下载记录数 据库中, 第一标识信息用于下载管理模块获得与下载资 源对应的下载请求。

优选的, 读取单元 304, 用于:

控制下载管理模块响应下载请求 , 在緩存服务模块中查询与第一标识信 息匹配的标识信息, 其中, 下载资源在緩存服务模块中通过第二标识信息 进 行索引;

在下载管理模块查询到与第一标识信息匹配的 第二标识信息时, 控制通 过緩存服务模块从第一存储区域读出与第二标 识信息所对应的下载资源。

优选的, 电子设备还包括:

确定单元, 用于下载管理模块在緩存服务模块中查询与第 一标识信息匹 配的标识信息失败时, 从第一标识信息中确定出 URL, URL用于服务器获取 下载资源;

第二发送单元,用于控制下载管理模块根据 URL向服务器发送第二请求, 第二请求用于请求服务器向下载管理模块返回 下载资源。

本发明提供的一个或多个实施例, 可以实现如下技术效果:

由于釆用了电子设备中的客户端模块向服务器 发起第一请求; 客户端模 块接收服务器基于第一请求生成并返回的报文 , 报文包括与第一请求对应的 实体数据部分; 在判定报文的实体数据部分为下载资源时, 客户端模块向电 子设备的第一存储区域写入下载资源; 客户端模块通知电子设备中的下载管 理模块, 下载管理模块从第一存储区域中读取下载资源 并存储到电子设备的 第二存储区域中技术手段, 由此可以看出, 本发明存储服务器响应的数据到 第一存储区域, 并通知下载管理模块从第一存储区域取回所需 实体数据部分 来实现了将下载资源下载到第二存储区域。 整个下载过程, 电子设备仅需要 向服务器发起一次请求, 服务器也只需要回应一次就能获得下载资源, 从而 减轻了网络负载, 避免了流量浪费的问题。

本领域内的技术人员应明白, 本发明的实施例可提供为方法、 系统、 或 计算机程序产品。 因此, 本发明可釆用完全硬件实施例、 完全软件实施例、 或结合软件和硬件方面的实施例的形式。 而且, 本发明可釆用在一个或多个 其中包含有计算机可用程序代码的计算机可用 存储介质 (包括但不限于磁盘 存储器、 CD-ROM、 光学存储器等)上实施的计算机程序产品的形 式。

本发明是参照根据本发明实施例的方法、 设备(系统)、 和计算机程序产 品的流程图和 /或方框图来描述的。 应理解可由计算机程序指令实现流程图 和 /或方框图中的每一流程和 /或方框、 以及流程图和 /或方框图中的流程 和 /或方框的结合。 可提供这些计算机程序指令到通用计算机、 专用计算机、 嵌入式处理机或其他可编程数据处理设备的处 理器以产生一个机器, 使得通 过计算机或其他可编程数据处理设备的处理器 执行的指令产生用于实现在流 程图一个流程或多个流程和 /或方框图一个方框或多个方框中指定的功能 装置。

这些计算机程序指令也可存储在能引导计算机 或其他可编程数据处理设 备以特定方式工作的计算机可读存储器中, 使得存储在该计算机可读存储器 中的指令产生包括指令装置的制造品, 该指令装置实现在流程图一个流程或 多个流程和 /或方框图一个方框或多个方框中指定的功能

这些计算机程序指令也可装载到计算机或其他 可编程数据处理设备上, 使得在计算机或其他可编程设备上执行一系列 操作步骤以产生计算机实现的 处理, 从而在计算机或其他可编程设备上执行的指令 提供用于实现在流程图 一个流程或多个流程和 /或方框图一个方框或多个方框中指定的功能 步 骤。

尽管已描述了本发明的优选实施例, 但本领域内的技术人员一旦得知了 基本创造性概念, 则可对这些实施例作出另外的变更和修改。 所以, 所附权 利要求意欲解释为包括优选实施例以及落入本 发明范围的所有变更和修改。 脱离本发明实施例的精神和范围。 这样, 倘若本发明实施例的这些修改和变 型属于本发明权利要求及其等同技术的范围之 内, 则本发明也意图包含这些 改动和变型在内。




 
Previous Patent: AUTOMATIC RESTITCHING OF 3-D SURFACES

Next Patent: HANDLE