客户端的页面加载和页面的缓存方法、系统和客户端与流程

文档序号:11250881阅读:261来源:国知局
客户端的页面加载和页面的缓存方法、系统和客户端与流程

本申请涉及互联网技术领域,尤其涉及一种客户端的页面加载方法、系统、客户端和页面的缓存方法、系统和客户端。



背景技术:

通常,客户端(例如电脑或手机)与服务器在数据交互方面以异步请求的方式为主,即客户端为数据的加载准备好相应的显示页面,例如准备一个加载的进度条显示效果等,之后向服务器发送http/https的请求,进而在服务器响应并返回页面数据后,根据返回的页面数据完成对页面的渲染。

为了加快客户端加载页面的速度,并节省流量,客户端会将服务器返回的页面数据进行缓存,使得客户端在再次加载时直接将缓存页面数据加载即可,而无需再次从服务器获取。然而目前客户端对缓存页面数据缺乏有效的管理,无法有效利用缓存页面数据。



技术实现要素:

本申请的目的旨在至少在一定程度上解决上述的技术问题之一。

为此,本申请的第一个目的在于提出一种客户端的页面加载方法,该方法通过对本地存储的缓存页面数据进行有效的管理,优化了页面的加载速度,减小了流量的消耗。

本申请的第二个目的在于提出了一种客户端的页面加载系统。

本申请的第三个目的在于提出了一种客户端。

本申请的第四个目的在于提出一种页面数据的缓存方法。

本申请的第五个目的在于提出一种页面数据的缓存系统。

本申请的第六个目的在于提出一种客户端。

为达上述目的,根据本申请第一方面实施例提出的一种客户端的页面加载方法,包括以下步骤:获取页面请求信息;根据所述页面请求信息生成查询键;根据所述查询键进行缓存查询判断是否存在与所述页面请求信息对应的缓存页面数据;如果判断存在与所述页面请求信息对应的缓存页面数据,则加载所述缓存页面数据;如果判断不存在与所述页面请求信息对应的缓存页面数据,则向服务器发送所述页面请求信息,并加载从所述服务器 获取的对应的页面数据。

根据本申请实施例的客户端的页面加载方法,根据页面请求信息生成查询键,并根据查询键进行缓存查询以判断是否存在与页面请求信息相对应的缓存页面数据,如果存在则加载该缓存页面数据,如果不存在则向服务器发送页面请求信息,并加载从服务器获取的对应的页面数据。该方法通过查询键可以准确地确定对应的缓存页面数据,从而可以对本地存储的缓存页面数据进行有效的管理,优化了页面的加载速度,减小了流量的消耗。

为达上述目的,根据本申请的第二方面实施例提出的一种客户端的页面加载系统,包括客户端和服务器,其中,所述客户端,用于获取页面请求信息,并根据所述页面请求信息生成查询键,以及根据所述查询键进行缓存查询判断是否存在与所述页面请求信息对应的缓存页面数据,其中,在判断存在与所述页面请求信息对应的缓存页面数据时加载所述缓存页面数据,在判断不存在与所述页面请求信息对应的缓存页面数据时向服务器发送所述页面请求信息,并加载从所述服务器获取的对应的页面数据;所述服务器,用于根据所述页面请求信息向所述客户端发送所述对应的页面数据。

根据本申请实施例的客户端的页面加载系统,根据页面请求信息生成查询键,并根据查询键进行缓存查询以判断是否存在与页面请求信息相对应的缓存页面数据,如果存在则加载该缓存页面数据,如果不存在则向服务器发送页面请求信息,并加载从服务器获取的对应的页面数据。该系统通过查询键可以准确地确定对应的缓存页面数据,从而可以对本地存储的缓存页面数据进行有效的管理,优化了页面的加载速度,减小了流量的消耗。

为达上述目的,本申请第三方面实施例提出的一种客户端,包括:第一请求信息获取模块,用于获取页面请求信息;第一生成模块,用于根据所述页面请求信息生成查询键;判断模块,用于根据所述查询键进行缓存查询判断是否存在与所述页面请求信息对应的缓存页面数据;加载模块,用于在判断存在与所述页面请求信息对应的缓存页面数据时加载所述缓存页面数据,以及在判断不存在与所述页面请求信息对应的缓存页面数据时,向服务器发送所述页面请求信息,并加载从所述服务器获取的对应的页面数据。

根据本申请实施例的客户端,根据页面请求信息生成查询键,并根据查询键进行缓存查询以判断是否存在与页面请求信息相对应的缓存页面数据,如果存在则加载该缓存页面数据,如果不存在则向服务器发送页面请求信息,并加载从服务器获取的对应的页面数据。该客户端通过查询键可以准确地确定对应的缓存页面数据,从而可以对本地存储的缓存页面数据进行有效的管理,优化了页面的加载速度,减小了流量的消耗。

为达上述目的,本申请第四方面实施例提出的一种页面数据的缓存方法,包括:获取页面请求信息;向服务器发送所述页面请求信息,并从所述服务器获取对应的页面数据;根据所述页面请求信息生成查询键;将所述页面数据进行缓存,同时记录对应的查询键。

根据本申请实施例的页面数据的缓存方法,向服务器发送获取到的页面请求信息并获取页面数据,并根据页面请求信息生成查询键,进而将页面数据进行缓存,同时记录对应的查询键。该方法通过记录与缓存页面数据相对应的查询键,便于通过查询键准确地确定对应的缓存页面数据,进而便于对本地存储的缓存页面数据进行有效地管理。

为达上述目的,本申请第五方面实施例提出的一种页面数据的缓存系统,包括客户端和服务器,其中,所述客户端,用于获取页面请求信息,并向所述服务器发送所述页面请求信息,以及从所述服务器接收页面数据,并根据所述页面请求信息生成查询键,以及将所述页面数据进行缓存,同时记录对应的查询键;所述服务器,用于根据所述页面请求信息向所述客户端发送所述对应的页面数据。

根据本申请提出的一种页面数据的缓存系统,向服务器发送获取到的页面请求信息并获取页面数据,并根据页面请求信息生成查询键,进而将页面数据进行缓存,同时记录对应的查询键。该系统通过记录与缓存页面数据相对应的查询键,便于通过查询键准确地确定对应的缓存页面数据,进而便于对本地存储的缓存页面数据进行有效地管理。

为达上述目的,本申请第六方面实施例提出的另一种客户端,包括第二获取模块,用于获取页面请求信息;交互模块,用于向服务器发送所述页面请求信息,并从所述服务器获取对应的页面数据;第二生成模块,用于根据所述页面请求信息生成查询键;缓存模块,用于将所述页面数据进行缓存,同时记录对应的查询键。

根据本申请实施例的客户端,向服务器发送获取到的页面请求信息并获取页面数据,并根据页面请求信息生成查询键,进而将页面数据进行缓存,同时记录对应的查询键。该客户端通过记录与缓存页面数据相对应的查询键,便于通过查询键准确地确定对应的缓存页面数据,进而便于对本地存储的缓存页面数据进行有效地管理。

本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。

附图说明

本申请的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:

图1是根据本申请一个实施例的客户端的页面加载方法的流程图;

图2是根据本申请一个具体实施例的客户端的页面加载的示例图;

图3是根据本申请一个具体实施例的客户端的页面加载方法的流程图;

图4是根据本申请一个实施例的客户端的页面加载系统的结构示意图;

图5是根据本申请一个实施例的客户端的结构示意图;

图6是根据本申请一个具体实施例的客户端的结构示意图;

图7是根据本申请另一个具体实施例的客户端的结构示意图;

图8是根据本申请一个实施例的页面数据的缓存方法的流程图;

图9是根据本申请一个实施例的页面数据的缓存系统的结构示意图;

图10是根据本申请又一个具体实施例的客户端的结构示意图;以及

图11是根据本申请再一个具体实施例的客户端的结构示意图。

具体实施方式

下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。

本申请提供的客户端的页面加载方法,根据查询键对本地缓存进行管理,即根据和页面请求相对应的查询键判断有没有与其相对应的缓存页面数据,如果没有,则向服务器发送该页面请求,避免了重复向服务器发送页面请求,导致的流量的浪费;当存在与其相对应的缓存页面数据的时候,直接根据该页面缓存数据进行页面渲染,提升了页面加载速度。该客户端的页面加载方法适用于用户通过浏览器、应用程序等获取网页的应用场景中。

图1是根据本申请一个实施例的客户端的页面加载方法的流程图。

如图1所示,该客户端的页面加载方法包括:

s110,获取页面请求消息。

在本申请的实施例中,客户端根据用户的指令生成页面请求消息,例如用户的网址输入指令,或者链接点击触发指令等等。进一步地,在客户端生成页面请求消息之后,拦截并获取该页面请求消息。在本申请的实施例中,客户端为网页加载类应用程序等,例如浏览器。

s120,根据页面请求信息生成查询键。

在本申请的一个实施例中,客户端生成的页面请求信息包括目标接口和请求参数。在该步骤中客户端可以根据页面请求信息生成对应的查询键便于根据查询键对缓存的缓存页面数据进行查询。具体地,客户端可先对页面请求信息中的请求参数进行序列化,并对序列化之后的请求参数进行签名处理以生成对应的签名值,以及根据目标接口和签名值生成查询键。

在本申请的实施例中,可以采用现有的签名算法对序列化之后的请求参数进行签名处理,例如md5(message-digestalgorithm5,信息摘要算法)等。需要说明的是,该步骤目的在于根据页面请求信息生成一个唯一的查询键,该查询键用于标识对应的缓存页面数据,上述查询键的生成方法只是本申请的一个具体实施例,本领域的技术人员还可根据其 他方式唯一生成所述查询键,这些其他的变形方式均应包含在本申请实施例的范围之内。

其中,举例说明根据页面请求生成查询键的过程,如果请求参数为:

为了实现在页面请求包含的目标接口和请求参数相同的情况下,对请求参数按照统一的规则处理,以使得得到的处理结果具有一致性,在本申请的一个实施例中,可以按照字母的顺序对上述的请求参数序列化,如下:

进一步地,为了生成查询键将上述序列化处理后的请求参数转换成string格式,并且使用md5方式进行处理以生成签名值,具体如下:

进而,使用md5方法对转换成string格式的请求参数进行参数处理后,得到签名值如下:

165760baec805842eabedf0c29b6709b

进而可以根据得到的该和签名值生成查询键。

需要说明的是,以上对请求参数序列化以及签名处理的方法包括但不限于以上方式,在此不一一举例。

可以理解,在本申请的实施例中,客户端中缓存有从服务器获取的页面数据,并作为缓存页面数据供查询。其中,每个缓存页面数据中都具有唯一的查询键,该查询键通过与获取该缓存页面数据的页面请求信息获得。因此,在本申请的实施例中,即可根据查询键查询在客户端中是否存在对应的缓存页面数据。

s130,根据查询键进行缓存查询判断是否存在与页面请求信息对应的缓存页面数据。

如上所述的,本申请实施例在客户端中基于查询键对缓存页面数据进行存储和读写操作。因此客户端在向服务器发送页面请求之前,需要根据查询键进行查询,判断在客户端中是否存在与当前页面请求相对应的缓存页面数据。

s140,如果判断存在与页面请求信息对应的缓存页面数据,则加载缓存页面数据。具体地,客户端如果根据查询键在自身的缓存中查询到对应的缓存页面数据,则客户端直接加载该缓存页面数据,从而避免再次向服务器请求该页面数据,造成流量的浪费。

在本申请的一个实施例中,还需要进一步判断缓存页面数据是否过期。其中,每个缓存页面数据具有缓存时的时间戳,根据该时间戳可判断是否过期。对于一些时效性较高的页面,例如新闻页面,如果缓存页面数据的时间较长,则应向服务器请求新的页面数据。因此在本申请的实施例中,该方法在判断缓存页面数据过期之后,还包括进一步根据页面请求信息获取页面类型,并根据页面类型判断加载缓存页面数据,或者向服务器请求新的页面数据。

s150,如果判断不存在与页面请求信息对应的缓存页面数据,则向服务器发送该页面请求信息,并加载从服务器获取的对应的页面数据。

在本申请的一个实施例中,客户端如果判断不存在与当前页面请求信息相对应的缓存页面数据,则表明当前页面请求为首次请求,或者以前的该页面请求信息对应的缓存页面数据已过期,因此向服务器发送该页面请求消息以获取对应的页面数据,并加载从服务器获取的对应的页面数据。

进一步地,在本申请的一个实施例中,客户端根据服务器返回的页面数据或者本地存储的缓存页面数据对页面进行渲染。

为了使得本领域的技术人员更加清楚的了解本申请,现举例说明,图2是根据本申请一个具体实施例的客户端的页面加载的示例图,如图2所示,在客户端获取到用户的页面请求信息后,根据页面请求信息生成查询键并发送给客户端的本地缓存(s210);本地缓存根据存储的缓存页面数据检测是否有对应于该查询键的缓存页面数据,如果有则直接返回缓存页面数据进行页面的渲染,即执行步骤s240,如果没有则将该页面请求信息发送至服务器端(s220);服务器根据该页面请求信息产生页面数据,并返回到本地缓存(s230);本地缓存根据对应的页面请求信息生成查询键,并根据查询键和返回的页面数据创建或者更新本地缓存,并返回服务器发送的页面数据至客户端进行页面渲染(s240)。

通过本申请实施例的客户端的页面加载方法,根据页面请求信息生成查询键,并根据查询键进行缓存查询以判断是否存在与页面请求信息相对应的缓存页面数据,如果存在则加载该缓存页面数据,如果不存在则向服务器发送页面请求信息,并加载从服务器获取的对应的页面数据。该方法通过查询键可以准确地确定对应的缓存页面数据,从而可以对本地存储的缓存页面数据进行有效的管理,优化了页面的加载速度,减小了流量的消耗。

图3是根据本申请一个具体实施例的客户端的页面加载方法的流程图。如图3所示,在如图1所示的基础上,该客户端的页面加载方法包括:

s310,获取页面请求信息。

s320,根据页面请求信息生成查询键。

s330,根据查询键进行缓存查询判断是否存在与页面请求信息对应的缓存页面数据。

s340,如果判断存在与页面请求信息对应的缓存页面数据,则加载缓存页面数据。

s350,如果判断不存在与页面请求信息对应的缓存页面数据,则向服务器发送页面请求信息,并加载从服务器获取的对应的页面数据。

s360,根据页面请求信息生成页面数据的查询键,并将页面数据作为缓存页面数据进行缓存,同时记录对应的查询键。

在本申请的一个实施例中,客户端生成的页面请求信息包括目标接口和请求参数。具体地,客户端可先对页面请求信息中的请求参数进行序列化,并对序列化之后的请求参数进行签名处理以生成对应的签名值,以及根据目标接口和签名值生成查询键。并且,客户端中缓存有从服务器获取的页面数据,并作为缓存页面数据供查询。其中,在将页面数据作为缓存页面数据进行缓存的时候,记录对应的查询键,从而每个缓存页面数据中都具有唯一的查询键,该查询键通过与获取该缓存页面数据的页面请求信息获得。

可以理解,基于页面请求信息生成该页面数据的查询键,并基于该查询键更新或者创 建本地缓存页面数据,进而便于根据该查询键查询是否拥有针对该页面请求的缓存页面数据。

通过本申请实施例的客户端的页面加载方法,根据页面请求生成对应的查询键,并且在存储缓存页面数据的时候,记录对应的查询键,方便通过查询键准确地确定对应的缓存页面数据,进而可以对本地存储的缓存页面数据进行有效的管理,优化了页面的加载速度,减小了流量的消耗。

为了实现上述实施例,本申请还提出了一种客户端的页面加载系统,图4为根据本申请一个实施例的客户端的页面加载系统的结构示意图,如图4所示,该客户端的页面加载系统包括:客户端400和服务器500。

其中,客户端400用于获取页面请求信息,并根据页面请求信息生成查询键,以及根据查询键进行缓存查询判断是否存在与页面请求信息对应的缓存页面数据,其中,在判断存在与页面请求信息对应的缓存页面数据时加载缓存页面数据,在判断不存在与页面请求信息对应的缓存页面数据时向服务器500发送页面请求信息,并加载从服务器500获取的对应的页面数据。

服务器500,用于根据页面请求信息向客户端400发送对应的页面数据。

具体地,在本申请的实施例中,客户端400根据用户的指令生成页面请求消息,例如用户的网址输入指令,或者链接点击触发指令等等。进一步地,在客户端400生成页面请求消息之后,拦截并获取该页面请求消息。在本申请的实施例中,客户端400为网页加载类应用程序等,例如浏览器。

进一步地,客户端400根据页面请求生成查询键,在本申请的一个实施例中,客户端400生成的页面请求信息包括目标接口和请求参数。在该步骤中客户端400可以根据页面请求信息生成对应的查询键便于根据查询键对缓存的缓存页面数据进行查询。具体地,客户端400可先对页面请求信息中的请求参数进行序列化,并对序列化之后的请求参数进行签名处理以生成对应的签名值,以及根据目标接口和签名值生成查询键。

在本申请的实施例中,客户端400中缓存有从服务器500获取的页面数据,并作为缓存页面数据供查询。其中,每个缓存页面数据中都具有唯一的查询键,该查询键通过与获取该缓存页面数据的页面请求信息获得。因此,在本申请的实施例中,即可根据查询键查询在客户端400中是否存在对应的缓存页面数据。

具体地,客户端400根据查询键进行缓存查询判断是否存在与页面请求信息对应的缓存页面数据。如上所述的,本申请实施例在客户端400中基于查询键对缓存页面数据进行存储和读写操作。因此客户端400在向服务器500发送页面请求之前,需要根据查询键进行查询,判断在客户端500中是否存在与当前页面请求相对应的缓存页面数据。

在本申请的一个实施例中,如果判断存在与页面请求信息对应的缓存页面数据,则加载缓存页面数据。具体地,客户端400如果根据查询键在自身的缓存中查询到对应的缓存页面数据,则客户端400直接加载该缓存页面数据,从而避免再次向服务器500请求该页面数据,造成流量的浪费。

在本申请的一个实施例中,客户端400还需要进一步判断缓存页面数据是否过期。其中,每个缓存页面数据度具有缓存时的时间戳,根据该时间戳可判断是否过期。对于一些时效性较高的页面,例如新闻页面,如果缓存页面数据的时间较长,则应向服务器500请求新的页面数据。因此在本申请的实施例中,该方法在判断缓存页面数据过期之后,还包括进一步根据页面请求信息获取页面类型,并根据页面类型判断加载缓存页面数据,或者向服务器500请求新的页面数据。

在本申请的一个实施例中,如果判断不存在与页面请求信息对应的缓存页面数据,则向服务器500发送该页面请求信息,并加载从服务器500获取的对应的页面数据。具体地,客户端400如果判断不存在与当前页面请求信息相对应的缓存页面数据,则表明当前页面请求为首次请求,或者以前的该页面请求信息对应的缓存页面数据已过期,因此向服务器500发送该页面请求消息以获取对应的页面数据,并加载从服务器500获取的对应的页面数据。

通过本申请实施例的客户端的页面加载系统,根据页面请求信息生成查询键,并根据查询键进行缓存查询以判断是否存在与页面请求信息相对应的缓存页面数据,如果存在则加载该缓存页面数据,如果不存在则向服务器发送页面请求信息,并加载从服务器获取的对应的页面数据。该系统通过查询键可以准确地确定对应的缓存页面数据,从而可以对本地存储的缓存页面数据进行有效的管理,优化了页面的加载速度,减小了流量的消耗。

在本申请的一个实施例中,客户端400,还用于根据页面请求信息生成页面数据的查询键,并将页面数据作为缓存页面数据进行缓存,同时记录对应的查询键。

在本申请的一个实施例中,客户端400生成的页面请求信息包括目标接口和请求参数。具体地,客户端400可先对页面请求信息中的请求参数进行序列化,并对序列化之后的请求参数进行签名处理以生成对应的签名值,以及根据目标接口和签名值生成查询键。并且,客户端400中缓存有从服务器500获取的页面数据,并作为缓存页面数据供查询。其中,在将页面数据作为缓存页面数据进行缓存的时候,记录对应的查询键,从而每个缓存页面数据中都具有唯一的查询键,该查询键通过与获取该缓存页面数据的页面请求信息获得。

可以理解,基于页面请求信息生成该页面数据的查询键,并基于该查询键更新或者创建本地缓存页面数据,进而便于根据该查询键查询是否拥有针对该页面请求的缓存页面数据。

通过本申请实施例的客户端的页面加载系统,根据页面请求生成对应的查询键,并且在存储缓存页面数据的时候,记录对应的查询键,方便通过查询键准确地确定对应的缓存页面数据,进而可以对本地存储的缓存页面数据进行有效的管理,优化了页面的加载速度,减小了流量的消耗。

为了实现上述实施例,本申请还提出了一种客户端,图5为根据本申请一个实施例的结构示意图,如图5所示,该客户端包括:第一请求信息获取模块410、第一生成模块420、判断模块430和加载模块440。

其中,第一请求信息获取模块410,用于获取页面请求信息。

在本申请的实施例中,第一请求信息获取模块410根据用户的指令生成页面请求消息,例如用户的网址输入指令,或者链接点击触发指令等等。进一步地,在第一请求信息获取模块410生成页面请求消息之后,拦截并获取该页面请求消息。

第一生成模块420,用于根据页面请求信息生成查询键。

在本申请的一个实施例中,图6为根据本申请一个具体实施例的客户端的结构示意图,如图6所示,在如图5所示的基础上,第一生成模块420具体包括:序列化子模块421、签名子模块422以及生成子模块423。

在本申请的一个实施例中,客户端生成的页面请求信息包括目标接口和请求参数。第一生成模块420可以根据页面请求信息生成对应的查询键便于根据查询键对缓存的缓存页面数据进行查询。具体地,序列化子模块421可先对页面请求信息中的请求参数进行序列化,签名子模块422对序列化之后的请求参数进行签名处理以生成对应的签名值,进而生成子模块423根据目标接口和签名值生成查询键。

在本申请的实施例中,签名子模块422可以采用现有的签名算法对序列化之后的请求参数进行签名处理,例如md5等。

判断模块430,用于根据查询键进行缓存查询判断是否存在与页面请求信息对应的缓存页面数据。

在本申请的实施例中,客户端中缓存有从服务器获取的页面数据,并作为缓存页面数据供查询。其中,每个缓存页面数据中都具有唯一的查询键,该查询键通过与获取该缓存页面数据的页面请求信息获得。因此,在本申请的实施例中,判断模块430可根据查询键查询在客户端中是否存在对应的缓存页面数据。

本申请实施例在客户端中基于查询键对缓存页面数据进行存储和读写操作。因此客户端在向服务器发送页面请求之前,判断模块430需要根据查询键进行查询,判断在客户端中是否存在与当前页面请求相对应的缓存页面数据。

加载模块440,用于在判断模块430判断存在与页面请求信息对应的缓存页面数据时 加载缓存页面数据,以及在判断模块430判断不存在与页面请求信息对应的缓存页面数据时,向服务器发送页面请求信息,并加载从服务器获取的对应的页面数据。

具体地,判断模块430如果根据查询键在自身的缓存中查询到对应的缓存页面数据,则加载模块440直接加载该缓存页面数据,从而避免再次向服务器请求该页面数据,造成流量的浪费。

在本申请的一个实施例中,判断模块430如果判断不存在与当前页面请求信息相对应的缓存页面数据,则表明当前页面请求为首次请求,或者以前的该页面请求信息对应的缓存页面数据已过期,因此加载模块440向服务器发送该页面请求消息以获取对应的页面数据,并加载从服务器获取的对应的页面数据。

通过本申请实施例的客户端,根据页面请求信息生成查询键,并根据查询键进行缓存查询以判断是否存在与页面请求信息相对应的缓存页面数据,如果存在则加载该缓存页面数据,如果不存在则向服务器发送页面请求信息,并加载从服务器获取的对应的页面数据。该客户端通过查询键可以准确地确定对应的缓存页面数据,从而可以对本地存储的缓存页面数据进行有效的管理,优化了页面的加载速度,减小了流量的消耗。

图7为根据本申请另一个具体实施例的客户端的结构示意图,在如图5所示的基础上,如图7所示,该客户端还包括:缓存记录模块450。

具体地,缓存记录模块450用于在第一生成模块420根据页面请求信息生成页面数据的查询键后,并将页面数据作为缓存页面数据进行缓存,同时记录对应的查询键。

在本申请的一个实施例中,客户端生成的页面请求信息包括目标接口和请求参数。在缓存记录模块450将页面数据作为缓存页面数据进行缓存的时候,记录对应的查询键,从而每个缓存页面数据中都具有唯一的查询键,该查询键通过与获取该缓存页面数据的页面请求信息获得。

可以理解,第一生成模块420基于页面请求信息生成该页面数据的查询键,缓存记录模块450基于该查询键更新或者创建本地缓存页面数据,进而便于判断模块430根据该查询键查询是否拥有针对该页面请求的缓存页面数据。

通过本申请实施例的客户端,根据页面请求生成对应的查询键,并且在存储缓存页面数据的时候,记录对应的查询键,方便通过查询键准确地确定对应的缓存页面数据,进而可以对本地存储的缓存页面数据进行有效的管理,优化了页面的加载速度,减小了流量的消耗。

本申请实施例中,还提供一种页面数据的缓存方法,该方法的实施例集中在根据页面请求生成查询键侧进行描述。可以理解,实现根据页面请求生成查询键的功能可是独立开发的一个生成模块,或者可是一个单独存在的应用程序,该页面数据的缓存方法根据页面 请求生成标识其唯一性的查询键,并在缓存对应于页面请求的页面数据的时候,同时记录查询键,以供准确地判断有没有对应于当前页面请求的缓存数据。

图8为根据本申请一个实施例的页面数据的缓存方法的流程图,如图8所示,该页面数据的缓存方法包括:

s810,获取页面请求信息。

在本申请的实施例中,客户端根据用户的指令生成页面请求消息,例如用户的网址输入指令,或者链接点击触发指令等等。进一步地,在客户端生成页面请求消息之后,拦截并获取该页面请求消息。在本申请的实施例中,客户端为网页加载类应用程序等,例如浏览器。

s820,向服务器发送页面请求信息,并从服务器获取对应的页面数据。

在本申请的一个实施例中,如果当前页面请求为首次请求,或者以前的该页面请求信息对应的缓存页面数据已过期,则向服务器发送该页面请求消息以获取对应的页面数据,并从服务器获取的对应的页面数据。

s830,根据页面请求信息生成查询键。

在本申请的一个实施例中,页面请求信息包括目标接口和请求参数。在该步骤中客户端可以根据页面请求信息生成对应的查询键便于根据查询键对缓存的缓存页面数据进行查询。具体地,客户端可先对页面请求信息中的请求参数进行序列化,并对序列化之后的请求参数进行签名处理以生成对应的签名值,以及根据目标接口和签名值生成查询键。在本申请的实施例中,可以采用现有的签名算法对序列化之后的请求参数进行签名处理,例如md5等。

s840,将页面数据进行缓存,同时记录对应的查询键。

在本申请的实施例中,客户端中缓存有从服务器获取的页面数据,并作为缓存页面数据供查询。其中,每个缓存页面数据中都具有唯一的查询键,该查询键通过与获取该缓存页面数据的页面请求信息获得。

在本申请的一个实施例中,客户端中缓存有从服务器获取的页面数据,并作为缓存页面数据供查询。其中,在将页面数据作为缓存页面数据进行缓存的时候,记录对应的查询键,从而每个缓存页面数据中都具有唯一的查询键,该查询键通过与获取该缓存页面数据的页面请求信息获得。

可以理解,客户端基于页面请求信息生成该页面数据的查询键,并基于该查询键更新或者创建本地缓存页面数据,进而便于客户端根据该查询键查询是否拥有针对该页面请求的缓存页面数据。

根据本申请实施例的页面数据的缓存方法,向服务器发送获取到的页面请求信息并获 取页面数据,并根据页面请求信息生成查询键,进而将页面数据进行缓存,同时记录对应的查询键。该方法通过记录与缓存页面数据相对应的查询键,便于通过查询键准确地确定对应的缓存页面数据,进而便于对本地存储的缓存页面数据进行有效地管理。

为了实现上述实施例,本申请还提出了一种页面数据的缓存系统,图9为根据本申请一个实施例的页面数据的缓存系统的结构示意图,如图9所示,该页面数据的缓存系统包括:客户端1000和服务器2000。

其中,客户端1000用于获取页面请求信息,并向服务器2000发送页面请求信息,以及从服务器2000接收页面数据,并根据页面请求信息生成查询键,以及将页面数据进行缓存,同时记录对应的查询键。

在本申请的一个实施例中,客户端1000生成的页面请求信息包括目标接口和请求参数。客户端1000可以根据页面请求信息生成对应的查询键便于根据查询键对缓存的缓存页面数据进行查询。具体地,客户端1000可先对页面请求信息中的请求参数进行序列化,并对序列化之后的请求参数进行签名处理以生成对应的签名值,以及根据目标接口和签名值生成查询键。

服务器2000用于根据页面请求信息向客户端1000发送对应的页面数据。

需要说明的是,上述结合图8详细描述本申请页面数据的缓存方法的实施例,可以用于为执行本申请页面数据的缓存系统的实施例。对于本申请页面数据的缓存系统的实施例中未被披露的细节,请参照本申请页面数据的缓存方法的实施例,在此不再赘述。

通过本申请提出的一种页面数据的缓存系统,向服务器发送获取到的页面请求信息并获取页面数据,并根据页面请求信息生成查询键,进而将页面数据进行缓存,同时记录对应的查询键。该系统通过记录与缓存页面数据相对应的查询键,便于通过查询键准确地确定对应的缓存页面数据,进而便于对本地存储的缓存页面数据进行有效地管理。

为了实现上述实施例,本申请还提出了另一种客户端,图10为根据本申请又一个具体实施例的客户端的结构示意图。如图10所示,该客户端包括:第二获取模块1010、交互模块1020、第二生成模块1030和缓存模块1040。

其中,第二获取模块1010用于获取页面请求信息。

在本申请的实施例中,客户端根据用户的指令生成页面请求消息,例如用户的网址输入指令,或者链接点击触发指令等等。进一步地,在客户端生成页面请求消息之后,第二获取模块1010拦截并获取该页面请求消息。在本申请的实施例中,客户端为网页加载类应用程序等,例如浏览器。

交互模块1020,用于向服务器发送页面请求信息,并从服务器获取对应的页面数据。

在本申请的一个实施例中,如果当前页面请求为首次请求,或者以前的该页面请求信 息对应的缓存页面数据已过期,交互模块1020则向服务器发送该页面请求消息以获取对应的页面数据,并从服务器获取的对应的页面数据。

第二生成模块1030,用于根据页面请求信息生成查询键。

在本申请的一个实施例中,图11为根据本申请再一个具体实施例的客户端的结构示意图,如图11所示,在如图10所示的基础上,第二生成模块1030具体包括:序列化子模块1031、签名子模块1032和生成子模块1033。

具体地,页面请求信息包括目标接口和请求参数。第二生成模块1030可以根据页面请求信息生成对应的查询键便于根据查询键对缓存的缓存页面数据进行查询。具体地,序列化子模块1031可先对页面请求信息中的请求参数进行序列化,签名子模块1032对序列化之后的请求参数进行签名处理以生成对应的签名值,生成子模块1033根据目标接口和签名值生成查询键。在本申请的实施例中,可以采用现有的签名算法对序列化之后的请求参数进行签名处理,例如md5等。

缓存模块1040,用于将页面数据进行缓存,同时记录对应的查询键。

在本申请的一个实施例中,客户端中缓存有从服务器获取的页面数据,并作为缓存页面数据供查询。其中,在缓存模块1040将页面数据作为缓存页面数据进行缓存的时候,记录对应的查询键,从而每个缓存页面数据中都具有唯一的查询键,该查询键通过与获取该缓存页面数据的页面请求信息获得。

可以理解,第二生成模块1030基于页面请求信息生成该页面数据的查询键,缓存模块1040基于该查询键更新或者创建本地缓存页面数据,进而便于客户端根据该查询键查询是否拥有针对该页面请求的缓存页面数据。

根据本申请实施例的客户端,向服务器发送获取到的页面请求信息并获取页面数据,并根据页面请求信息生成查询键,进而将页面数据进行缓存,同时记录对应的查询键。该客户端通过记录与缓存页面数据相对应的查询键,便于通过查询键准确地确定对应的缓存页面数据,进而便于对本地存储的缓存页面数据进行有效地管理。

在本申请的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一 个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。

应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。

本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。

上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。

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