基于HTTP请求头的C/S应用缓存解决方法与流程

文档序号:12377495阅读:410来源:国知局

本发明涉及C/S软件架构(客户端/服务器端)中客户端对缓存的解决方式,具体的说,涉及一种基于HTTP请求头的C/S应用缓存解决方法。



背景技术:

在C/S软件架构中,客户端数据来自于服务器端,但是频繁地从服务器端获取重复资源,是一种对网络资源的浪费,此现象在手机端客户端表现尤为严重,也无端的给服务器端造成过多压力,在客户端不能连接服务器时会出现糟糕的用户体验。

为了解决以上存在的问题,人们一直在寻求一种理想的技术解决方案。



技术实现要素:

本发明的目的是针对现有技术的不足,从而提供一种轻量化、易实现的基于HTTP请求头的C/S应用缓存解决方法。

本发明的目的是通过下面的技术方案来实现的:一种基于HTTP请求头的C/S应用缓存解决方法,包括以下步骤:

步骤1,定义客户端缓存文件的保存命名方式,其中,新文件名=原文件名+Etag;

步骤2,客户端缓存文件与服务端器文件对比校验

在请求一个网络资源文件时,先判断客户端缓存文件是否为最新,即是否与服务器端文件资源一致,如果为最新,则直接使用客户端缓存文件,如果不是最新,则先更新客户端缓存文件,再使用客户端缓存文件;

步骤3,缓存文件的更新

如果需要更新缓存文件,先将旧的客户端缓存文件删除掉,然后向服务器端发送GET请求,根据响应的Etag字段及原文件名,生成新文件名,再将服务器端文件按照新文件名保存在客户端。

基于上述,步骤2中,在校验客户端缓存文件与服务端器文件时,先向服务器端发送HEAD请求,根据服务器端响应的Etag字段及原文件名,生成新文件名;若客户端本地存在该新文件名,则客户端缓存文件与服务器端资源文件一致,客户端缓存文件可以直接使用;否则需要更新客户端缓存文件。

本发明相对现有技术具有突出的实质性特点和显著的进步,具体的说,本发明通过在程序开发过程中需要引入缓存处理机制,减轻了服务器端的压力,提升了客户端的用户体验。

说明书附图

图1是本发明的流程框图。

具体实施方式

下面给出具体实施方式对本发明做进一步的详细描述:

如图1所示,一种基于HTTP请求头的C/S应用缓存解决方法,包括以下步骤:

步骤1,定义客户端缓存文件的保存命名方式,其中,新文件名=原文件名+Etag,如,对于原文件名为“category.xml”的网络资源,在缓存到客户端时,命名为“category_1401bf-ab0-53adb8fa37bfa.xml”;

步骤2,客户端缓存文件与服务端器文件对比校验

在请求一个网络资源文件时,先判断客户端缓存文件是否为最新,即是否与服务器端文件资源一致,如果为最新,则直接使用客户端缓存文件,如果不是最新,则先更新客户端缓存文件,再使用客户端缓存文件;

具体的,在校验客户端缓存文件与服务端器文件时,先向服务器端发送HEAD请求,根据服务器端响应的Etag字段(如:1401bf-ab0-53adb8fa37bfa)及原文件名category.xml,生成新文件名category_1401bf-ab0-53adb8fa37bfa.xml;若客户端本地存在该新文件名category_1401bf-ab0-53adb8fa37bfa.xml文件,则客户端缓存文件与服务器端资源文件一致,客户端缓存文件可以直接使用;否则需要更新客户端缓存文件。

步骤3,缓存文件的更新

如果需要更新缓存文件,先将旧的客户端缓存文件删除掉,然后向服务器端发送GET请求,根据响应的Etag字段(如:1401bf-ab0-53adb8fa37bfa)及原文件名(如:category.xml),生成新文件名category_1401bf-ab0-53adb8fa37bfa.xml,再将服务器端文件按照新文件名保存在客户端。

最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制;尽管参照较佳实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者对部分技术特征进行等同替换;而不脱离本发明技术方案的精神,其均应涵盖在本发明请求保护的技术方案范围当中。

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