加载资源文件的方法、设备和系统技术方案

技术编号:10487607 阅读:156 留言:0更新日期:2014-10-03 16:25
本发明专利技术公开了一种加载资源文件的方法、设备和系统,属于通信领域。所述方法包括:向服务器请求一个网页;对所述服务器返回的所述网页进行解析,在资源文件标签中解析到缓存散列值属性,所述缓存散列值属性的值为对资源文件进行哈希处理后得到的值;根据所述缓存散列值属性的值查找本地存储属性,所述本地存储属性中保存有缓存散列值属性的值与资源文件的编码的对应关系;在本地存储属性中查找到所述缓存散列值属性的值对应的编码,根据所述编码得到对应的所述资源文件,将所述资源文件显示在所述网页上。所述系统包括:终端和服务器。本发明专利技术缩短了访问网页时的传输时间,带来传输速度的提升。

【技术实现步骤摘要】
加载资源文件的方法、设备和系统
本专利技术涉及通信领域,特别涉及一种加载资源文件的方法、设备和系统。
技术介绍
客户端的浏览器在浏览HTML (HyperText Markup Language,超文本标记语言)网页时,网页的加载时间和所消耗的数据流量变得十分敏感。基于HTTP(HyperText TransferProtocol,超文本传输协议)网页加载的过程如下:浏览器给服务器发送一个Request请求,服务器收到后进行处理,返回相应的Response响应给浏览器,浏览器解析响应中的HTML得到网页进行显示。一个HTML网页中除了文本以外,通常还包括图片、CSS(CascadingStyle Sheet,级联样式表)文件,JS (JavaScript,脚本)文件等信息。当一个HTML网页的存储容量较大时,可以将其分割成若干个小文件进行传输,但是传输多个小文件时,会带来多次Request请求,导致传输时间会变长。 目前,有一种解决方案是把图片等资源文件以base64编码的方式嵌入到HTML文件里,一次性发送到客户端。其中,在HTML文件的<img>标签中,通过src属性指定资源文件的类型和编码方式,随后写入资源文件经过编码后得到的一长串字符,以这种方式将资源文件的全部内容一次性地传输至客户端,避免了多次向服务器发送请求,从而缩短了HTML网页的传输时间。 但是,上述方案存在一个缺陷,就是一次性将资源文件的全部内容传输至客户端后,客户端不会对该资源文件进行缓存,如果客户端访问的其它HTML网页也使用了同样的资源文件时,无法直接从客户端的缓存中获取,该资源文件必须要重新传输一次,也会带来传输时间较长的问题。
技术实现思路
本专利技术提供了一种加载资源文件的方法、设备和系统,以缩短访问网页时的传输时间。所述技术方案如下: 第一方面,本专利技术提供了一种加载资源文件的方法,所述方法包括: 向服务器请求一个网页; 对所述服务器返回的所述网页进行解析,在资源文件标签中解析到缓存散列值属性,所述缓存散列值属性的值为对资源文件进行哈希处理后得到的值; 根据所述缓存散列值属性的值查找本地存储属性,所述本地存储属性中保存有缓存散列值属性的值与资源文件的编码的对应关系; 在本地存储属性中查找到所述缓存散列值属性的值对应的编码,根据所述编码得到对应的所述资源文件,将所述资源文件显示在所述网页上。 其中,所述方法还包括: 如果在本地存储属性中没有查找到所述缓存散列值属性的值对应的编码,则将所述缓存散列值属性的值发送给所述服务器,请求对应的编码; 接收所述服务器返回的所述缓存散列值属性的值对应的编码,根据所述编码得到对应的所述资源文件,将所述资源文件显示在所述网页上。 其中,如果在本地存储属性中没有查找到所述缓存散列值属性的值对应的编码,则将所述缓存散列值属性的值发送给所述服务器,请求对应的编码,包括: 如果有多个缓存散列值属性的值在本地存储属性中没有找到对应的编码,则通过一个请求将所述多个缓存散列值属性的值一起发送给所述服务器,请求每个缓存散列值属性的值对应的编码。 其中,接收所述服务器返回的所述缓存散列值属性的值对应的编码之后,还包括: 将接收到的编码与其对应的所述缓存散列值属性的值以键值对的形式保存在本地存储属性中; 其中,所述本地存储属性中的键为所述缓存散列值属性的值,所述本地存储属性中的值为所述编码。 其中,所述对资源文件进行哈希处理后得到的值为: 所述资源文件的信息摘要;或者,对所述资源文件的信息摘要进行编码后得到的编码。 第二方面,本专利技术还提供了一种加载资源文件的方法,所述方法包括: 预先对一个网页中包含的资源文件进行哈希处理,并将哈希处理得到的值保存在资源文件标签的缓存散列值属性中; 接收终端发送的访问所述网页的请求; 将所述网页返回给所述终端,以使所述终端解析到所述缓存散列值属性后在本地存储属性中查找所述缓存散列值属性的值对应的编码,根据所述编码得到对应的所述资源文件,将所述资源文件显示在所述网页上。 其中,所述方法还包括: 建立并保存所述资源文件的哈希处理的值与所述资源文件的编码之间的对应关系; 当接收到所述终端发送的缓存散列值属性的值时,在所述对应关系中查找所述缓存散列值属性的值对应的编码,其中,所述终端的本地存储属性中没有保存所述缓存散列值属性的值对应的编码; 将查找到的编码返回给所述终端,以使所述终端根据接收到的编码得到对应的资源文件,将得到的资源文件显示在所述网页上。 其中,当接收到所述终端发送的缓存散列值属性的值时,在所述对应关系中查找所述缓存散列值属性的值对应的编码,包括: 当接收到所述终端发送的一个请求时,所述请求中包含多个缓存散列值属性的值,在所述对应关系中查找接收到的每个缓存散列值属性的值对应的编码。 其中,预先对一个网页中包含的资源文件进行哈希处理,并将哈希处理得到的值保存在资源文件标签的缓存散列值属性中,包括: 预先对一个网页中包含的资源文件进行哈希运算,得到所述资源文件的信息摘要,并将所述信息摘要保存在资源文件标签的缓存散列值属性中;或者, 预先对一个网页中包含的资源文件进行哈希运算,得到所述资源文件的信息摘要,再对所述信息摘要进行base64编码,并将base64编码后得到的编码保存在资源文件标签的缓存散列值属性中。 第三方面,本专利技术还提供了一种加载资源文件的终端,所述终端包括: 请求模块,用于向服务器请求一个网页; 解析模块,用于对所述服务器返回的所述网页进行解析,在资源文件标签中解析到缓存散列值属性,所述缓存散列值属性的值为对资源文件进行哈希处理后得到的值; 查找模块,用于根据所述缓存散列值属性的值查找本地存储属性,所述本地存储属性中保存有缓存散列值属性的值与资源文件的编码的对应关系,在本地存储属性中查找到所述缓存散列值属性的值对应的编码; 显示模块,用于根据所述编码得到对应的所述资源文件,将所述资源文件显示在所述网页上。 其中,所述请求模块还包括: 编码请求单元,用于如果所述查找模块在本地存储属性中没有查找到所述缓存散列值属性的值对应的编码,则将所述缓存散列值属性的值发送给所述服务器,请求对应的编码;接收所述服务器返回的所述缓存散列值属性的值对应的编码; 相应地,所述显示模块还用于根据所述编码请求单元得到的所述编码,得到对应的所述资源文件,将所述资源文件显示在所述网页上。 其中,所述编码请求单元用于: 如果有多个缓存散列值属性的值在本地存储属性中没有找到对应的编码,则通过一个请求将所述多个缓存散列值属性的值一起发送给所述服务器,请求每个缓存散列值属性的值对应的编码。 其中,所述终端还包括: 存储模块,用于将所述编码请求单元接收到的编码与其对应的所述缓存散列值属性的值以键值对的形式保存在本地存储属性中; 其中,所述本地存储属性中的键为所述缓存散列值属性的值,所述本地存储属性中的值为所述编码。 其中,所述对资源文件进行哈希处理后得到的值为: 所述资源文件的信息摘要;或者,对所述资源文件的信息摘要进行编码后得到的编码。 第四方面,本专利技术还提供了一本文档来自技高网
...

【技术保护点】
一种加载资源文件的方法,其特征在于,所述方法包括:向服务器请求一个网页;对所述服务器返回的所述网页进行解析,在资源文件标签中解析到缓存散列值属性,所述缓存散列值属性的值为对资源文件进行哈希处理后得到的值;根据所述缓存散列值属性的值查找本地存储属性,所述本地存储属性中保存有缓存散列值属性的值与资源文件的编码的对应关系;在本地存储属性中查找到所述缓存散列值属性的值对应的编码,根据所述编码得到对应的所述资源文件,将所述资源文件显示在所述网页上。

【技术特征摘要】
1.一种加载资源文件的方法,其特征在于,所述方法包括: 向服务器请求一个网页; 对所述服务器返回的所述网页进行解析,在资源文件标签中解析到缓存散列值属性,所述缓存散列值属性的值为对资源文件进行哈希处理后得到的值; 根据所述缓存散列值属性的值查找本地存储属性,所述本地存储属性中保存有缓存散列值属性的值与资源文件的编码的对应关系; 在本地存储属性中查找到所述缓存散列值属性的值对应的编码,根据所述编码得到对应的所述资源文件,将所述资源文件显示在所述网页上。2.根据权利要求1所述的方法,其特征在于,所述方法还包括: 如果在本地存储属性中没有查找到所述缓存散列值属性的值对应的编码,则将所述缓存散列值属性的值发送给所述服务器,请求对应的编码; 接收所述服务器返回的所述缓存散列值属性的值对应的编码,根据所述编码得到对应的所述资源文件,将所述资源文件显示在所述网页上。3.根据权利要求2所述的方法,其特征在于,如果在本地存储属性中没有查找到所述缓存散列值属性的值对应的编码,则将所述缓存散列值属性的值发送给所述服务器,请求对应的编码,包括: 如果有多个缓存散列值 属性的值在本地存储属性中没有找到对应的编码,则通过一个请求将所述多个缓存散列值属性的值一起发送给所述服务器,请求每个缓存散列值属性的值对应的编码。4.根据权利要求2所述的方法,其特征在于,接收所述服务器返回的所述缓存散列值属性的值对应的编码之后,还包括: 将接收到的编码与其对应的所述缓存散列值属性的值以键值对的形式保存在本地存储属性中; 其中,所述本地存储属性中的键为所述缓存散列值属性的值,所述本地存储属性中的值为所述编码。5.根据权利要求1所述的方法,其特征在于,所述对资源文件进行哈希处理后得到的值为: 所述资源文件的信息摘要;或者,对所述资源文件的信息摘要进行编码后得到的编码。6.一种加载资源文件的方法,其特征在于,所述方法包括: 预先对一个网页中包含的资源文件进行哈希处理,并将哈希处理得到的值保存在资源文件标签的缓存散列值属性中; 接收终端发送的访问所述网页的请求; 将所述网页返回给所述终端,以使所述终端解析到所述缓存散列值属性后在本地存储属性中查找所述缓存散列值属性的值对应的编码,根据所述编码得到对应的所述资源文件,将所述资源文件显示在所述网页上。7.根据权利要求6所述的方法,其特征在于,所述方法还包括: 建立并保存所述资源文件的哈希处理的值与所述资源文件的编码之间的对应关系; 当接收到所述终端发送的缓存散列值属性的值时,在所述对应关系中查找所述缓存散列值属性的值对应的编码,其中,所述终端的本地存储属性中没有保存所述缓存散列值属性的值对应的编码; 将查找到的编码返回给所述终端,以使所述终端根据接收到的编码得到对应的资源文件,将得到的资源文件显示在所述网页上。8.根据权利要求7所述的方法,其特征在于,当接收到所述终端发送的缓存散列值属性的值时,在所述对应关系中查找所述缓存散列值属性的值对应的编码,包括: 当接收到所述终端发送的一个请求时,所述请求中包含多个缓存散列值属性的值,在所述对应关系中查找接收到的每个缓存散列值属性的值对应的编码。9.根据权利要求6所述的方法,其特征在于,预先对一个网页中包含的资源文件进行哈希处理,并将哈希处理得到的值保存在资源文件标签的缓存散列值属性中,包括: 预先对一个网页中包含的资源文件进行哈希运算,得到所述资源文件的信息摘要,并将所述信息摘要保存在资源文件标签的缓存散列值属性中;或者, 预先对一个网页中包含的资源文件进行哈希运算,得到所述资源文件的信息摘要,再对所述信息摘要进行base64编码,并将base64编码后得到的编码保存在资源文件标签的缓存散列值属性中。10.一种加载资源文件的终端,其特征在于,所述终端包括: 请求模块,用于向服务器请求一个网页; 解析模...

【专利技术属性】
技术研发人员:董超
申请(专利权)人:联想北京有限公司
类型:发明
国别省市:北京;11

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

1