一种访问web端缓存数据的方法及终端与流程

文档序号:14714459发布日期:2018-06-16 01:03阅读:397来源:国知局
一种访问web端缓存数据的方法及终端与流程

本发明涉及计算机技术领域,特别涉及一种访问web端缓存数据的方法及终端。



背景技术:

现有技术中解决web浏览器对缓存大小和时间的限制问题,通常采用Cookie、localStorage或sessionStoreage,其中,Cookie是由web端生成,浏览器会将Cookie的key/value保存到某个目录下的文本文件内,下次请求同一网站时就发送该Cookie给服务器,由于浏览器限制了Cookie的大小为4K,这样的大小无法满足目前越来越丰富的web应用,后来为了解决了Cookie存储空间不足的问题,在HTML5中,新加入了一个localStorage特性,这个特性主要是用来作为本地存储来使用的,localStorage中一般浏览器支持的是5M大小,在不同的浏览器中localStorage会有所不同,虽然localStorage将存储空间扩大到了5M,但如果希望存储更多的数据,如H5游戏,5M的存储空间是不够用的,存在着局限性;sessionStorage与localStorage的唯一区别就是localStorage属于永久性存储,而sessionStorage属于当会话结束的时候,sessionStorage中的键值对会被清空,因此,Cookie、localStorage或sessionStoreage并未完全解决浏览器对缓存大小和时间的限制,此外,Cookie、localStoreage和sessionStoreage都无法实现跨域缓存。



技术实现要素:

本发明所要解决的技术问题是:提供一种跨域访问web端缓存数据的方法及终端。

为了解决上述技术问题,本发明采用的一种技术方案为:

一种访问web端缓存数据的方法,包括步骤:

S1、接收web端的缓存数据并存储,形成第一缓存文件,并设置所述第一缓存文件永不过期;

S2、接收web端发送的获取第二缓存文件的请求,判断是否存储有所述第二缓存文件,若否,则与存储所述第二缓存文件的第二服务器建立联系,接收所述第二服务器发送的第二缓存文件,并将所述第二缓存文件发送给web端。

为了解决上述技术问题,本发明采用的另一种技术方案为:

一种访问web端缓存数据的终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现以下步骤:

S1、接收web端的缓存数据并存储,形成第一缓存文件,并设置所述第一缓存文件永不过期;

S2、接收web端发送的获取第二缓存文件的请求,判断是否存储有所述第二缓存文件,若否,则与存储所述第二缓存文件的第二服务器建立联系,接收所述第二服务器发送的第二缓存文件,并将所述第二缓存文件发送给web端。

本发明的有益效果在于:通过接收web端的缓存数据并存储,形成第一缓存文件,并设置所述第一缓存文件永不过期,接收web端发送的获取第二缓存文件的请求,判断是否存储有所述第二缓存文件,若否,则与存储所述第二缓存文件的第二服务器建立联系,接收所述第二服务器发送的第二缓存文件,并将所述第二缓存文件发送给web端,实现了web端缓存数据的永久缓存和跨域访问。

附图说明

图1为本发明实施例访问web端缓存数据的方法流程图;

图2为本发明实施例访问web端缓存数据的终端的结构示意图;

标号说明:

1、访问web端缓存数据的终端;2、存储器;3、处理器。

具体实施方式

为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。

本发明最关键的构思在于:接收web端的缓存数据并存储,形成第一缓存文件,并设置第一缓存文件永不过期,接收web端发送的获取第二缓存文件的请求,判断是否存储有所述第二缓存文件,若否,则与存储所述第二缓存文件的第二服务器建立联系。

请参照图1,一种访问web端缓存数据的方法,包括步骤:

S1、接收web端的缓存数据并存储,形成第一缓存文件,并设置所述第一缓存文件永不过期;

S2、接收web端发送的获取第二缓存文件的请求,判断是否存储有所述第二缓存文件,若否,则与存储所述第二缓存文件的第二服务器建立联系,接收所述第二服务器发送的第二缓存文件,并将所述第二缓存文件发送给web端。

从上述描述可知,本发明的有益效果在于:通过接收web端的缓存数据并存储,形成第一缓存文件,并设置所述第一缓存文件永不过期,接收web端发送的获取第二缓存文件的请求,判断是否存储有所述第二缓存文件,若否,则与存储所述第二缓存文件的第二服务器建立联系,接收所述第二服务器发送的第二缓存文件,并将所述第二缓存文件发送给web端,实现了web端缓存数据的永久缓存和跨域访问。

进一步的,步骤S1具体包括:

S11、设定一目录下的文件,用于存储缓存;

S12、修改服务器配置,设置所述文件永不过期;

S13、接收web端的缓存数据,将所述缓存数据写入所述文件。

由上述描述可知,设定一目录下的文件,用于存储缓存,通过修改服务器配置,设置所述文件永不过期,实现了缓存数据的永久存储。

进一步的,步骤S2具体包括:

S21、接收web端发送的获取第二缓存文件的请求,判断是否存储有所述第二缓存文件,若否,则执行步骤S22,否则,执行步骤S23;

S22、发送获取第二缓存文件的请求至存储所述第二缓存文件的第二服务器,接收所述第二服务器发送的第二缓存文件,并将所述第二缓存文件发送给web端;

S23、将所述第二缓存文件发送给web端。

由上述描述可知,通过发送获取第二缓存文件的请求至存储所述第二缓存文件的第二服务器,接收所述第二服务器发送的第二缓存文件,并将所述第二缓存文件发送给web端,实现了缓存数据的跨域获取。

进一步的,还包括步骤:

S3、接收web端发送的更新第三缓存文件为第四缓存文件的请求,判断是否存储有所述第三缓存文件,若否,则与存储所述第三缓存文件的第二服务器建立联系,发送更新第三缓存文件为第四缓存文件的请求至第二服务器,以使得所述第二服务器判断本地缓存中的第三缓存文件与所述第四缓存文件是否相同,若否,则将所述第三缓存文件更新为第四缓存文件,否则,不更新第三缓存文件。

进一步的,步骤S3具体包括:

S31、接收web端发送的更新第三缓存文件为第四缓存的请求,判断是否存储有所述第三缓存文件,若否,则执行步骤S32,否则,执行步骤S33;

S32、发送更新第三缓存文件为第四缓存文件的请求至存储所述第三缓存文件的第二服务器,以使得所述第二服务器判断本地缓存中的第三缓存文件与所述第四缓存文件是否相同,若否,则将所述第三缓存文件更新为第四缓存文件,否则,不更新所述第三缓存文件;

S33、判断本地缓存中的第三缓存文件与所述第四缓存文件是否相同,若否,则将所述第三缓存文件更新为第四缓存文件,否则,不更新所述第三缓存文件。

由上述描述可知,通过与存储所述第三缓存文件的第二服务器建立联系,发送更新第三缓存文件为第四缓存文件的请求至第二服务器,以使得所述第二服务器进行更新第三缓存的操作,实现了缓存数据的跨域更新。

请参照图2,一种访问web端缓存数据的终端1,包括存储器2、处理器3及存储在存储器2上并可在处理器3上运行的计算机程序,其特征在于,所述处理器3执行所述程序时实现以下步骤:

S1、接收web端的缓存数据并存储,形成第一缓存文件,并设置所述第一缓存文件永不过期;

S2、接收web端发送的获取第二缓存文件的请求,判断是否存储有所述第二缓存文件,若否,则与存储所述第二缓存文件的第二服务器建立联系,接收所述第二服务器发送的第二缓存文件,并将所述第二缓存文件发送给web端。

从上述描述可知,本发明的有益效果在于:通过接收web端的缓存数据并存储,形成第一缓存文件,并设置所述第一缓存文件永不过期,接收web端发送的获取第二缓存文件的请求,判断是否存储有所述第二缓存文件,若否,则与存储所述第二缓存文件的第二服务器建立联系,接收所述第二服务器发送的第二缓存文件,并将所述第二缓存文件发送给web端,实现了web端缓存数据的永久缓存和跨域访问。

进一步的,步骤S1具体包括:

S11、设定一目录下的文件,用于存储缓存;

S12、修改服务器配置,设置所述文件永不过期;

S13、接收web端的缓存数据,将所述缓存数据写入所述文件。

由上述描述可知,设定一目录下的文件,用于存储缓存,通过修改服务器配置,设置所述文件永不过期,实现了缓存数据的永久存储。

进一步的,步骤S2具体包括:

S21、接收web端发送的获取第二缓存文件的请求,判断是否存储有所述第二缓存文件,若否,则执行步骤S22,否则,执行步骤S23;

S22、发送获取第二缓存文件的请求至存储所述第二缓存文件的第二服务器,接收所述第二服务器发送的第二缓存文件,并将所述第二缓存文件发送给web端;

S23、将所述第二缓存文件发送给web端。

由上述描述可知,通过发送获取第二缓存文件的请求至存储所述第二缓存文件的第二服务器,接收所述第二服务器发送的第二缓存文件,并将所述第二缓存文件发送给web端,实现了缓存数据的跨域获取。

进一步的,还包括步骤:

S3、接收web端发送的更新第三缓存文件为第四缓存文件的请求,判断是否存储有所述第三缓存文件,若否,则与存储所述第三缓存文件的第二服务器建立联系,发送更新第三缓存文件为第四缓存文件的请求至第二服务器,以使得所述第二服务器判断本地缓存中的第三缓存文件与所述第四缓存文件是否相同,若否,则将所述第三缓存文件更新为第四缓存文件,否则,不更新第三缓存文件。

进一步的,步骤S3具体包括:

S31、接收web端发送的更新第三缓存文件为第四缓存的请求,判断是否存储有所述第三缓存文件,若否,则执行步骤S32,否则,执行步骤S33;

S32、发送更新第三缓存文件为第四缓存文件的请求至存储所述第三缓存文件的第二服务器,以使得所述第二服务器判断本地缓存中的第三缓存文件与所述第四缓存文件是否相同,若否,则将所述第三缓存文件更新为第四缓存文件,否则,不更新所述第三缓存文件;

S33、判断本地缓存中的第三缓存文件与所述第四缓存文件是否相同,若否,则将所述第三缓存文件更新为第四缓存文件,否则,不更新所述第三缓存文件。

由上述描述可知,通过与存储所述第三缓存文件的第二服务器建立联系,发送更新第三缓存文件为第四缓存文件的请求至第二服务器,以使得所述第二服务器进行更新第三缓存的操作,实现了缓存数据的跨域更新。

实施例一

一种访问web端缓存数据的方法,包括步骤:

S1、接收web端的缓存数据并存储,形成第一缓存文件,并设置所述第一缓存文件永不过期;

步骤S1具体包括:

S11、设定一目录下的文件,用于存储缓存;

S12、修改服务器配置,设置所述文件永不过期;

S13、接收web端的缓存数据,将所述缓存数据写入所述文件;

修改服务器配置,设置缓存永不过期,当web端第一次请求获取所述缓存文件时,web端会将缓存文件直接存储在本地,除非服务器更新所述第一缓存文件,否则之后的请求实际上是从web端的本地获取的,所述web端本地存储的缓存文件的存储期限由服务器和web端共同商定,服务器第一次接收其他服务器缓存文件后,会按照目录将不同服务器的缓存文件存储在自身的本地缓存中,所述服务器的缓存文件为永不过期,除非其他服务器的本地缓存有更新;

S2、接收web端发送的获取第二缓存文件的请求,判断是否存储有所述第二缓存文件,若否,则与存储所述第二缓存文件的第二服务器建立联系,接收所述第二服务器发送的第二缓存文件,并将所述第二缓存文件发送给web端;

步骤S2具体包括:

S21、接收web端发送的获取第二缓存文件的请求,判断是否存储有所述第二缓存文件,若否,则执行步骤S22,否则,执行步骤S23,“判断是否存储有所述第二缓存文件”具体通过判断所述第二缓存文件的来源,若来源为其他服务器,则认为未存储,本地缓存中可能存储有第二缓存文件,但是由于所述第二缓存文件的来源为其他服务器,此时无法确定本地缓存中的第二缓存文件是否为最新的;

S22、发送获取第二缓存文件的请求至存储所述第二缓存文件的第二服务器,接收所述第二服务器发送的第二缓存文件,并将所述第二缓存文件发送给web端;

其中,“发送获取第二缓存文件的请求至存储所述第二缓存文件的第二服务器”,具体分为以下两种情况,若是第一次获取第二服务器的第二缓存文件,即自身本地缓存中不存在第二服务器的缓存文件,则发送获取第二缓存文件的请求,否则,先发送获取第二缓存文件最近修改时间的请求至存储所述第二缓存文件的第二服务器,接收所述第二服务器中第二缓存文件最近的修改时间,判断所述第二服务器中第二缓存文件最近的修改时间和自身本地缓存中与所述第二服务器对应的目录下的缓存文件的修改时间是否相同,若相同,将所述第二缓存文件发送给web端,若不相同,则发送获取第二缓存文件的请求至存储所述第二缓存文件的第二服务器,并更新自身本地缓存中与所述第二服务器对应的目录下的缓存文件为所述第二缓存文件,并将所述第二缓存文件发送给web端;

S23、将所述第二缓存文件发送给web端;

还包括步骤:

S3、接收web端发送的更新第三缓存文件为第四缓存文件的请求,判断是否存储有所述第三缓存文件,若否,则与存储所述第三缓存文件的第二服务器建立联系,发送更新第三缓存文件为第四缓存文件的请求至第二服务器,以使得所述第二服务器判断本地缓存中的第三缓存文件与所述第四缓存文件是否相同,若否,则将所述第三缓存文件更新为第四缓存文件,否则,不更新第三缓存文件。

步骤S3具体包括:

S31、接收web端发送的更新第三缓存文件为第四缓存的请求,判断是否存储有所述第三缓存文件,若否,则执行步骤S32,否则,执行步骤S33;

S32、发送更新第三缓存文件为第四缓存文件的请求至存储所述第三缓存文件的第二服务器,以使得所述第二服务器判断本地缓存中的第三缓存文件与所述第四缓存文件是否相同,若否,则将所述第三缓存文件更新为第四缓存文件,否则,不更新所述第三缓存文件;

S33、判断本地缓存中的第三缓存文件与所述第四缓存文件是否相同,若否,则将所述第三缓存文件更新为第四缓存文件,否则,不更新所述第三缓存文件。

实施例二

本实施例通过具体的场景,描述本发明上述访问web端缓存数据的方法是如何具体实现的:

场景一:获取同域缓存

1、用户通过web端访问网站地址,如该地址为:http://www.abc.com/a.html;

2、a.html先加载缓存控制器文件http://www.abc.com/cacheControl.js

3、cacheControl.js向服务器abc发起请求:

操作:下载缓存文件cache.json;

来源服务器名称:abc;

4、服务器abc得知“来源服务器名称”与本服务器名称相同后,服务器abc判断此次请求是否为web端的第一次请求,若否,根据http协议和浏览器商定该文件是否已经过期,如果浏览器发现当前文件已经过期,就重新请求cache.json文件,否则从本地获取这个文件;

5、cacheControl.js解析cache.json中的内容,并且缓存在内存中,提供给网站的具体模块使用;

场景二:获取跨域缓存

1、用户通过web端访问网站地址,如该地址为:http://www.kkk.com/b.html;

2、b.html先加载缓存控制器文件http://www.kkk.com/cacheControl.js;

3、控制器cacheControl.js向服务器kkk请求:

操作:下载缓存文件cache.json;

来源服务器名称:abc;

4、服务器kkk得知“来源服务器名称”与本服务器名称不同,则发送请求至服务器abc,接收服务器abc返回的cache.json;

5、服务器kkk判断是否为第一次接收所述服务器abc发送的缓存文件,若否,则将cache.json与自身本地缓存中与所述服务器abc对应的目录下的缓存文件做字符串对比,若相同,将所述第二缓存文件发送给web端,若不相同,重新生成本地的缓存文件abc.cache.json;

6、返回abc.cache.json给cacheControl.js;

7、剩下步骤,同“场景一”中的步骤5;

场景三:同域缓存更新

1、用户通过web端访问网站地址,如该地址为:http://www.abc.com/a.html;

2、执行“场景一”中的步骤2;

3、a.html中的某个业务logic.js通知cacheControl.js:“修改缓存x,新的值为y”;

4、cacheControl.js通知服务器:

操作:缓存更新

来源服务器名称:abc;

原缓存值:x;

新缓存值:y;

5、服务器abc得知“来源服务器名称”与本服务器名称相同后,判断原缓存值与新缓存值是否相同,若否,则更新cache.json文件,否则,不更新;

场景四:跨域缓存更新

1、用户通过web端访问网站地址,如该地址为:http://www.kkk.com/b.html;

2、执行“场景二”中的步骤2;

3、b.html中某个业务logic.js通知cacheControl.js:“修改服务器abc上的缓存x,新的值为y”;

4、cacheControl.js通知服务器kkk:

操作:缓存更新;

来源服务器名称:abc;

原缓存值:x;

新缓存值:y;

5、服务器kkk得知“来源服务器名称”与本服务器名称不同,且要更新的缓存在服务器abc中,将更新缓存的消息发送给服务器abc;

6、服务器abc执行“场景三”中的步骤5。

实施例三

一种访问web端缓存数据的终端1,包括存储器2、处理器3及存储在存储器2上并可在处理器3上运行的计算机程序,所述处理器3执行所述程序时实现实施例一中的各个步骤。

综上所述,本发明提供的一种访问web端缓存数据的方法及终端,通过接收web端的缓存数据并存储,形成第一缓存文件,并设置所述第一缓存文件永不过期,接收web端发送的获取第二缓存文件的请求,判断是否存储有所述第二缓存文件,若否,则与存储所述第二缓存文件的第二服务器建立联系,接收所述第二服务器发送的第二缓存文件,并将所述第二缓存文件发送给web端,实现了web端缓存数据的永久缓存和跨域访问,设定一目录下的文件,用于存储缓存,通过修改服务器配置,设置所述文件永不过期,实现了缓存数据的永久存储。

以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1