【技术实现步骤摘要】
本专利技术涉及静态资源的缓存方法,更具体地说是指基于Localstroage的静态资源的缓存方法及缓存系统。
技术介绍
Localstroage为HTML5本地存储web storage特性的API之一,主要作用是将数据保存在客户端中,而客户端一般是指上海网站设计用户的计算机。在移动设备上,由于大部分浏览器都支持web storage特性,因此在android和ios等智能手机上的web浏览器都能正常使用该特性。Cookie实际上是一小段的文本信息,客户端请求服务器,如果服务器需要记录该用户状态,就使用response向客户端浏览器颁发一个Cookie,客户端浏览器会把Cookie保存起来,当浏览器再请求该网站时,浏览器把请求的网址连同该Cookie一同提交给服务器,服务器检查该Cookie,以此来辨认用户状态,服务器还可以根据需要修改Cookie的内容。通常需要SEO,导致css不能缓存,仅缓存js使得整个缓存方案意义减小,在pc端中兼容性不太好,不支持LS的浏览器比例仍然很大,网络速度快,协商缓存响应快,Localstroage读取+eval很多时候会比不上304(未修改,自从上次请求后,请求的网页未修改过)。在页面渲染之后,需要读取Localstroage中缓存内容,如果有一个资源更新,那么就需要整个页面的资源代码重新下发,所以往往每周上线的时候会引起页面性能数据抖动。任何在该域内的所有页面,都可以访问Localstroage数据,但各个浏览器厂商的浏览器之间的数据是各自独立的,如果在firefox中使用Localstroage存储一组数据,在ch ...
【技术保护点】
基于Localstroage的静态资源的缓存方法,其特征在于,包括以下具体步骤:步骤一、源码保存步骤,页面初次加载时,将页面的代码保存到Localstroage中;步骤二、版本号保存步骤,在整个页面上利用cookie保存一个版本号信息,并存储一个MD5的版本号;步骤三、对比判断步骤,第二次访问页面,引入版本号信息,将当前页面的文件版本号与步骤二中的版本号对比,判断代码是否更新,当代码更新时,执行步骤四,当代码无更新时,执行步骤五;步骤四、代码更新步骤,重新下发有变更的代码,并将当前的代码重新保存到Localstroage内,覆盖原先的数据,更新版本号,得到一个新的版本号;步骤五、代码执行步骤,解析本地Localstroage并读取代码,执行下发代码;步骤六、结束步骤,重复步骤三,直至页面不再加载。
【技术特征摘要】
1.基于Localstroage的静态资源的缓存方法,其特征在于,包括以下具体步骤:步骤一、源码保存步骤,页面初次加载时,将页面的代码保存到Localstroage中;步骤二、版本号保存步骤,在整个页面上利用cookie保存一个版本号信息,并存储一个MD5的版本号;步骤三、对比判断步骤,第二次访问页面,引入版本号信息,将当前页面的文件版本号与步骤二中的版本号对比,判断代码是否更新,当代码更新时,执行步骤四,当代码无更新时,执行步骤五;步骤四、代码更新步骤,重新下发有变更的代码,并将当前的代码重新保存到Localstroage内,覆盖原先的数据,更新版本号,得到一个新的版本号;步骤五、代码执行步骤,解析本地Localstroage并读取代码,执行下发代码;步骤六、结束步骤,重复步骤三,直至页面不再加载。2.根据权利要求1所述的基于Localstroage的静态资源的缓存方法,其特征在于,所述步骤一中,页面初次加载时,需要进行嵌标签步骤,先将页面中的js和css嵌入script和style标签,以此把代码存入Localstroage中。3.根据权利要求1或2所述的基于Localstroage的静态资源的缓存方法,其特征在于,所述步骤三中,引入的版本号信息为版本号信息中的config.js。4.根据权利要求3所述的基于Localstroage的静态资源的缓存方法,其特征在于,所述步骤四中,在进行重新下发有变更的代码时,需要进行缓存代码分层步骤,将需要缓存的代码分为通用代码以及业务代码。5.根据权利要求4所述的基于Localstroage的静态资源的缓存方法,其特征在于,所述步骤四中,更新版本号的具体步骤如下:步骤1、第一判断步骤,进入页面后,判断页面中是否存在缓存版本的cookie,若页面中存在缓存版本的cookie,则执行步骤2,若页面中不存在缓存版本的cookie,则执行步骤5;步骤2、第二判断步骤,判断cookie中版本是否为最新版本,当cookie中存在过期版本时,执行步骤3,当cookie的版本为最新版本时,执行步骤4;步骤3、第一执行步骤,下发过期代码后,执行代码并将代码存入到Localstroage,同时重新设置cookie后,执行步骤6;步骤4、第二执行步骤,cookie中的代码不会下发,同时执行存在Localstroage中的代码;步骤5、第三执行步骤,全量下发cookie的版本信息,执行代码并将代码存入到Localstroage,同时重新设置cookie后,执行步骤6;步骤6、结束步骤,重复步骤1,直至不再进入页面。6.基于Localstroage的静态资源的缓存系统,其特征在于,包括源码保存模块、版本保存模块、对比判断模块、代码更新模块以及代码执行模块;所述源码保存模块,用于当页面初次加载时,将页面的代码保存到Localstroage中;所述版本保...
【专利技术属性】
技术研发人员:吴澳,
申请(专利权)人:深圳市彬讯科技有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。