[发明专利]一种加载静态资源的方法和装置有效
申请号: | 201310129963.7 | 申请日: | 2013-04-15 |
公开(公告)号: | CN103218434A | 公开(公告)日: | 2013-07-24 |
发明(设计)人: | 任远;姚丽梅 | 申请(专利权)人: | 北京小米科技有限责任公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100102 北京市朝阳区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 加载 静态 资源 方法 装置 | ||
技术领域
本发明涉及数据处理领域,更具体地,涉及一种加载静态资源的方法和装置。
背景技术
随着互联网行业的发展,网页内容所提供的信息日渐丰富,网页上所展示的数据内容也随之越来越丰富。与此同时,国内的互联网用户带宽和体积庞大的网页应用形成了一个比较特殊的矛盾,如何更快地为用户呈现网页内容,减少用户的等待时间成为所有互联网公司技术研发过程中必须要考虑的一个环节。其中最为突显的问题就是随着网页应用的富媒体化,以及向客户端本地应用交互的靠拢,越来越多的静态资源(Static Resource),例如JS(JavaScript)文件、CSS(Cascading Style Sheet,级联样式表)文件或图片等需要被传输到用户的浏览器端。
目前有以下两种方式来解决该问题:
1、使用CDN(Content Delivery Network,内容分发网络)节点缓存静态资源,使用户可以就近取得所需资源,提高用户访问网站的响应速度。
2、利用浏览器将最近请求过的页面在用户磁盘上存储,当再次请求这个页面时,浏览器与服务器进行缓存协商,即浏览器向服务器询问页面是否被修改过,如果没有修改,浏览器使用本地缓存文件,否则服务器返回新内容。
CDN节点缓存静态资源的方案存在以下缺陷:需要建立多个机房,每个机房设置多台服务器,花销较大。并且,一旦用户失去网络连接或CDN节点出现问题,将无法请求到静态资源。
浏览器缓存的方案需要浏览器与服务器进行交互,而且一旦用户失去网络连接,还将导致浏览器与服务器无法进行交互。
发明内容
有鉴于此,本发明实施例的目的是提出一种加载静态资源的方法和装置,能够加快对静态资源的访问速度。
为了达到上述目的,本发明实施例提出一种加载静态资源的方法,包括以下步骤:
当载入的网页文件中存在需请求的静态资源时,从所述网页文件中获取需请求的静态资源的名称和版本;
判断本地是否存储有与所述名称和版本均一致的静态资源;
当本地存储有与所述名称和版本均一致的静态资源时,加载本地存储的与所述名称和版本均一致的静态资源。
本发明实施例中,只要本地存储有与需请求的静态资源相同的静态资源时,直接加载本地存储的该静态资源,而无需向静态资源所在的服务器发出任何请求或与静态资源所在的服务器进行协商,因此,该过程中不会发生任何网络请求,所以,当断网时也可以实现静态资源的加载。不仅加快了对于网站静态资源的访问速度,同时也降低了服务器端的负载,减少了对于硬件设施建设的投入。
作为上述技术方案的优选,所述方法还包括:当本地未存储有与所述名称和版本均一致的静态资源时,发送静态资源请求。本方案给出了当本地未存储有请求的静态资源时获取静态资源的方法。
作为上述技术方案的优选,发送静态资源请求的步骤包括:判断静态资源所在的服务器与访问的网站是否在同一域名下;当静态资源所在的服务器与访问的网站不在同一域名下时,使用跨越接口向所述静态资源所在的服务器发送静态资源请求。本方案实现了跨域请求静态资源。
作为上述技术方案的优选,所述方法还包括:接收返回的静态资源;加载接收的静态资源;将接收的静态资源存储在本地。存储在本地的静态资源可以用于下次直接加载。
作为上述技术方案的优选,所述方法还包括:按预设规则清除本地存储的静态资源。本方案节省了本地存储的空间。
本发明实施例还提出一种加载静态资源的装置,包括:
获取单元,用于当载入的网页文件中存在需请求的静态资源时,从所述网页文件中获取需请求的静态资源的名称和版本;
判断单元,用于判断本地是否存储有与所述名称和版本均一致的静态资源;
加载单元,用于当本地存储有与所述名称和版本均一致的静态资源时,加载本地存储的与所述名称和版本均一致的静态资源。
作为上述技术方案的优选,所述装置还包括:
发送单元,用于当本地未存储有所述静态资源,或者本地存储的所述静态资源的版本与需请求的静态资源的版本不一致时,发送静态资源请求。
作为上述技术方案的优选,所述发送单元包括:
判断模块,用于判断静态资源所在的服务器与访问的网站是否在同一域名下;
发送模块,用于当静态资源所在的服务器与访问的网站不在同一域名下时,使用跨越接口向所述静态资源所在的服务器发送静态资源请求。
作为上述技术方案的优选,所述装置还包括:
接收单元,用于接收返回的静态资源;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京小米科技有限责任公司,未经北京小米科技有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310129963.7/2.html,转载请声明来源钻瓜专利网。