一种网页内容的加载方法、装置及系统与流程

文档序号:18196877发布日期:2019-07-17 05:54阅读:141来源:国知局
一种网页内容的加载方法、装置及系统与流程

本发明涉及数据处理技术领域,尤其涉及一种网页内容的方法、服务器和客户端。



背景技术:

随着互联网技术的不断发展,浏览器已经成为人们日常生活中不可或缺的一个组成部分,人们可以通过浏览器浏览网页新闻、观看视频、网络购物等。当用户在浏览器中输入待搜索内容时,浏览器通过向服务器请求获取用于加载内容所需要的数据,并且浏览器会将访问过的网页对应的数据进行缓存,以便于当用户再次访问时,可以直接从本地缓存中直接获取数据并进行加载显示。

目前,在用户使用浏览器时,浏览器在加载页面内容前根据加载内容对应的脚本文件的版本信息,判断脚本文件中数据是否修改,并且当检测到任意一个脚本文件的版本信息更新时,重新获取加载页面内容所需要的全部脚本文件数据,从而造成对于部分脚本文件数据未更新仍然重新获取而导致的资源浪费和数据获取效率较低的问题,进而导致网页内容加载的效率和资源利用率较低的问题。



技术实现要素:

鉴于上述问题,本发明提供一种网页内容的加载方法、服务器和客户端,主要目的在于在获取用于加载网页内容的脚本文件时,只对数据更新的脚本文件重新获取,而对于未数据未更新的脚本文件则直接从本地缓存中提取,进而实现网页内容的加载。

为解决上述技术问题,第一方面,本发明提供了一种网页内容的加载方法,该方法包括:

接收脚本文件获取请求,所述脚本文件获取请求中携带有与所述脚本文件对应的脚本文件标识和第一脚本校验值,所述脚本文件中保存有用于加载页面内容的数据;

根据所述脚本文件标识和所述第一脚本校验值判断所述脚本文件中的数据是否更新;

若是,则发送所述脚本文件的当前数据和所述脚本文件的第二脚本校验值,以使得根据所述当前数据加载所述页面内容;

若否,则输出所述脚本文件数据未更新响应信息,所述响应信息为触发从预置缓存数据库中获取所述脚本文件数据的信息。

可选的,所述接收脚本文件获取请求之后,所述方法还包括:

根据所述脚本文件的标识信息提取所述脚本文件的当前数据;

调用预置函数根据所述当前数据计算所述脚本文件的第二脚本校验值。

可选的,所述根据所述脚本文件标识和所述第一脚本校验值判断所述脚本文件中的数据是否更新包括:

比较所述脚本文件的第一脚本校验值和所述第二脚本校验值是否相等;

若是,则判断所述脚本文件中的数据未更新;

若否,则判断所述脚本文件中的数据更新。

可选的,所述接收脚本文件获取请求之前,所述方法还包括:

创建脚本文件集合,所述脚本文件集合中包含有全部用于加载所述页面内容需要的数据所对应的脚本文件;

所述接收脚本文件获取请求包括:

依次提取并接收所述脚本文件集合中的所述各个脚本文件的获取请求。

可选的,所述若所述脚本文件中的数据更新,则发送所述脚本文件的当前数据和所述脚本文件的第二脚本校验值之后,所述方法还包括:

触发删除所述脚本文件的数据和所述脚本文件的第一脚本校验值;

将所述脚本文件的当前数据和所述脚本文件的第二脚本校验值添加至所述预置缓存数据库。

第二方面,本发明提供了一种网页内容的加载方法,该方法包括:

查看缓存的当前待加载的脚本文件的脚本文件标识及第一脚本校验值;

向服务器发送脚本文件获取请求,所述脚本文件获取请求中携带有与所述脚本文件对应的脚本文件标识和第一脚本校验值;

接收服务器返回的响应信息;

若响应信息为空,则直接使用缓存的所述脚本文件的数据;

若响应信息不为空,则使用响应信息携带的脚本文件的数据加载页面。

可选的,若响应信息不为空,响应信息中携带有所述脚本文件标识、脚本文件以及第二脚本校验值,所述方法还包括:

使用响应信息中的脚本文件替换缓存的所述脚本文件标识对应的脚本文件,并使用响应信息中的第二脚本校验值替换缓存的第一脚本校验值。

第三方面,本发明提供了一种服务器,包括:

接收单元,用于接收脚本文件获取请求,所述脚本文件获取请求中携带有与所述脚本文件对应的脚本文件标识和第一脚本校验值,所述脚本文件中保存有用于加载页面内容的数据;

判断单元,用于根据所述脚本文件标识和所述第一脚本校验值判断所述脚本文件中的数据是否更新;

发送单元,用于若是,则发送所述脚本文件的当前数据和所述脚本文件的第二脚本校验值,以使得根据所述当前数据加载所述页面内容;

输出单元,用于若否,则输出所述脚本文件数据未更新响应信息,所述响应信息为触发从预置缓存数据库中获取所述脚本文件数据的信息。

可选的,所述服务器还包括:

提取单元,用于根据所述脚本文件的标识信息提取所述脚本文件的当前数据;

计算单元,用于调用预置函数根据所述当前数据计算所述脚本文件的第二脚本校验值。

可选的,所述判断单元包括:

比较模块,用于比较所述脚本文件的第一脚本校验值和所述第二脚本校验值是否相等;

第一判断模块,用于若所述脚本文件的第一脚本校验值和所述第二脚本校验值相等,则判断所述脚本文件中的数据未更新;

第二判断模块,用于若所述脚本文件的第一脚本校验值和所述第二脚本校验值不相等,则判断所述脚本文件中的数据更新。

可选的,所述服务器还包括:创建单元,

所述创建单元,用于创建脚本文件集合,所述脚本文件集合中包含有全部用于加载所述页面内容需要的数据所对应的脚本文件;

所述接收单元,具体用于依次提取并接收所述脚本文件集合中的所述各个脚本文件的获取请求。

可选的,所述服务器还包括:

删除单元,用于触发删除所述脚本文件的数据和所述脚本文件的第一脚本校验值;

添加单元,用于将所述脚本文件的当前数据和所述脚本文件的第二脚本校验值添加至所述预置缓存数据库。

第四方面,本发明提供了一种客户端,包括:

查看单元,用于查看缓存的当前待加载的脚本文件的脚本文件标识及第一脚本校验值;

发送单元,用于向服务器发送脚本文件获取请求,所述脚本文件获取请求中携带有与所述脚本文件对应的脚本文件标识和第一脚本校验值;

接收单元,用于接收服务器返回的响应信息;

使用单元,用于若响应信息为空,则直接使用缓存的所述脚本文件的数据;

所述使用单元,还用于若响应信息不为空,则使用响应信息携带的脚本文件的数据加载页面。

可选的,所述客户端还包括:

替换单元,用于使用响应信息中的脚本文件替换缓存的所述脚本文件标识对应的脚本文件,并使用响应信息中的第二脚本校验值替换缓存的第一脚本校验值。

第五方面,本发明提供了一种网页内容的加载系统,包括:如上所述的服务器及如上所述的客户端。

为了实现上述目的,根据本发明的第六方面,提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述所述的网页内容的加载方法。

为了实现上述目的,根据本发明的第七方面,提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述所述的网页内容的加载方法。

借由上述技术方案,本发明提供的网页内容的加载方法、服务器和客户端,对于现有技术在加载网页内容时,当检测到用于加载网页内容的脚本文件版本信息更新时,则对全部用于加载网页内容的脚本文件进行重新获取,进而根据全部重新获取的脚本文件对网页内容进行加载,本发明通过接收脚本文件获取请求,脚本文件获取请求中携带有与脚本文件对应的脚本文件标识和第一脚本校验值,脚本文件中保存有用于加载页面内容的数据;脚本文件标识和第一脚本校验值判断脚本文件中的数据是否更新;若是,则发送脚本文件的当前数据和脚本文件的第二脚本校验值,以使得根据当前数据加载页面内容;若否,则输出脚本文件数据未更新响应信息,响应信息为触发从预置缓存数据库中获取脚本文件数据的信息,因此相比于现有技术,本发明在客户端对网页内容加载所需要的脚本文件获取时,服务器通过检测各个脚本文件中的数据是否更新,并根据检测结果确定重新获取脚本文件数据或者直接从本地缓存中直接提取缓存数据,可以避免当脚本文件中的数据未更新却仍然重新获取造成的资源和时间浪费的问题,从而可以提高数据获取效率,进而提高了网页内容加载的效率,并且节约了资源。同时,通过客户端在获取到脚本文件更新后的当前数据之后,将本地缓存数据库中的保存的数据进行删除并将更新后的当前数据和校验值进行保存,以便于据此下一次对数据进行判断或者使用,可以在避免无效数据占用存储空间的同时确保数据的准确性。

上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1示出了本发明实施例提供的一种网页内容的加载方法流程图;

图2示出了本发明实施例提供的一种脚本文件数据获取流程示意图;

图3示出了本发明实施例提供的另一种网页内容的加载方法流程图;

图4示出了本发明实施例提供的另一种脚本文件数据获取流程示意图;

图5示出了本发明实施例提供的又一种脚本文件数据获取流程示意图

图6示出了本发明实施例提供的又一种网页内容的加载方法流程图;

图7示出了本发明实施例提供的一种服务器的组成框图;

图8示出了本发明实施例提供的另一种服务器的组成框图;

图9示出了本发明实施例提供的一种客户端的组成框图;

图10示出了本发明实施例提供的一种网页内容加载系统的组成框图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

为了提高网页内容加载的效率和资源利用率,本发明实施例提供了一种网页内容的加载方法,如图1所示,该方法包括:

101、接收脚本文件获取请求。

其中,所述脚本文件获取请求中携带有与所述脚本文件对应的脚本文件标识和第一脚本校验值,所述脚本文件中保存有用于加载页面内容的数据。而所述脚本文件可以为保存javascript脚本并以js扩展名命名的文本,所述脚本文件标识可以为与脚本文件对应的唯一文件名称,也可以为预先设定的每个脚本文件对应的序号等。

对于本发明实施例,脚本文件的脚本校验值是根据保存的脚本文件缓存数据计算生成的,例如可以通过哈希算法计算得到脚本校验值,从而当脚本文件中数据发生修改时,脚本校验值也会改变。对于本发明实施例,第一脚本校验值可以为0,当脚本校验值为0时表明在本地缓存中并不存在该脚本文件中的数据而是第一次请求获取脚本文件数据,此时可以直接根据脚本文件标识获取脚本文件数据。例如如图2所示,web服务器接收到浏览器发送的脚本文件a.js获取请求,此时在获取请求中未携带脚本校验值,表明为第一次请求获取脚本文件a.js,此时web服务器直接提取脚本文件a.js数据并根据该数据计算得到相应的校验值,而后将脚本文件a.js数据和脚本文件校验值同时发送至浏览器,以使得浏览器根据该脚本文件a.js数据加载网页内容,并对该数据和校验值在本地缓存数据库中进行保存。

102、根据所述脚本文件标识和所述第一脚本校验值判断所述脚本文件中的数据是否更新。

如上述步骤101中所述,脚本文件校验值可以用来标识脚本文件数据,当脚本文件数据修改时,脚本校验值一定会随着变化,所以在本步骤中可以通过脚本文件校验值来判断脚本文件数据是否更新。具体地,所述步骤102可以为根据脚本文件标识提取脚本文件当前数据,并计算当前数据的脚本校验值和第一脚本校验值比较,根据比较结果判断脚本文件中的数据是否更新。

103、若所述脚本文件中的数据更新,则发送所述脚本文件的当前数据和所述脚本文件的第二脚本校验值。

进一步的,以使得根据所述当前数据加载所述页面内容。其中,所述当前数据即为脚本文件中更新后的最新数据,而所述第二脚本校验值为根据当前数据计算得到的当前脚本校验值。

对于本发明实施例,当脚本文件中的数据更新时,则需要根据更新后的数据对网页内容进行加载,所以此时将获取到的更新后的脚本文件当前数据和当前的脚本校验值发送,以使得根据当前数据加载网页内容,并且将当前脚本校验值进行发送保存可以便于在下次请求获取脚本文件时,根据该脚本校验值进行判断数据是否更新。

104、若所述脚本文件中的数据未更新,则输出所述脚本文件数据未更新响应信息。

其中,所述响应信息为触发从预置缓存数据库中获取所述脚本文件数据的信息。当判断结果显示脚本文件中的数据未更新时,则此时无需重复获取数据脚本文件数据,因此通过发送响应信息触发从浏览器本地缓存数据中直接提取脚本文件数据。

本发明实施例提供的网页内容的加载方法,对于现有技术在加载网页内容时,当检测到用于加载网页内容的脚本文件版本信息更新时,则对全部用于加载网页内容的脚本文件进行重新获取,进而根据全部重新获取的脚本文件对网页内容进行加载,本发明通过接收脚本文件获取请求,脚本文件获取请求中携带有与脚本文件对应的脚本文件标识和第一脚本校验值,脚本文件中保存有用于加载页面内容的数据;脚本文件标识和第一脚本校验值判断脚本文件中的数据是否更新;若是,则发送脚本文件的当前数据和脚本文件的第二脚本校验值,以使得根据当前数据加载页面内容;若否,则输出脚本文件数据未更新响应信息,响应信息为触发从预置缓存数据库中获取脚本文件数据的信息,因此相比于现有技术,本发明在客户端对网页内容加载所需要的脚本文件获取时,服务器通过检测各个脚本文件中的数据是否更新,并根据检测结果确定重新获取脚本文件数据或者直接从本地缓存中直接提取缓存数据,可以避免当脚本文件中的数据未更新却仍然重新获取造成的资源和时间浪费的问题,从而可以提高数据获取效率,进而提高了网页内容加载的效率,并且节约了资源。

进一步的,作为对图1所示实施例的细化及扩展,本发明实施例还提供了另一种网页内容的加载方法,如图3所示。

201、接收脚本文件获取请求。

其中,所述脚本文件获取请求中携带有与所述脚本文件对应的脚本文件标识和第一脚本校验值,所述脚本文件中保存有用于加载页面内容的数据。所述脚本文件标识和所述第一脚本校验值的概念解释可以参考所述步骤101中相应描述,在此不再赘述。

对于本发明实施例,所述步骤201之前所述方法还可以包括:创建脚本文件集合,所述脚本文件集合中包含有全部用于加载所述页面内容需要的数据所对应的脚本文件。此时,本步骤具体可以包括:依次提取并接收所述脚本文件集合中的所述各个脚本文件的获取请求。需要说明的是,在浏览器中加载一个页面内容时对应的html(hypertextmark-uplanguage,超级文本标记语言)文件中包含有多个js文件(脚本文件),从而在用户请求加载页面内容时,首先将加载页面内容需要的js文件标识保存在同一个脚本文件集合中,并依次提取脚本文件集合中的各个脚本文件并接受脚本文件获取请求,以便于依次检测各个脚本文件中数据是否更新,并根据每个脚本文件的检测结果采取相应的措施,避免了当检测到一个脚本文件数据更新时就重新获取全部脚本文件数据造成的资源和时间浪费问题,从而提高了资源利用率且提高了脚本文件数据获取的效率。

202、根据所述脚本文件的标识信息提取所述脚本文件的当前数据。

其中,所述当前数据为脚本文件的最新数据。

对于本发明实施例,可以在web服务器中将全部用于网页内容加载的最新数据进行保存,并以各个网页加载对应的html文件为单元进行分类。以及各个html文件中保存有加载网页内容需要的全部脚本文件,且每个脚本文件中的数据均为最新数据。从而本步骤具体可以为根据脚本文件标识进行查找提取脚本文件最新数据,多方面确保了脚本文件最新数据获取的准确性,从而提高了网页内容加载的准确性。

203、调用预置函数根据所述当前数据计算所述脚本文件的第二脚本校验值。

其中,所述预置函数可以为现有技术中用于哈希算法中的计算函数,本发明实施例对此不做赘述。对于本发明实施例,通过获取到脚本文件的最新数据并根据该最新数据计算得到相应的脚本校验值,以便于根据该最新脚本校验值和浏览器本地缓存数据对应的脚本校验值判断脚本文件中的数据是否发生修改。

204、根据所述脚本文件标识和所述第一脚本校验值判断所述脚本文件中的数据是否更新。

具体地,本步骤可以包括:比较所述脚本文件的第一脚本校验值和所述第二脚本校验值是否相等;若是,则判断所述脚本文件中的数据未更新;若否,则判断所述脚本文件中的数据更新。需要说明的是,由于第二校验值是根据脚本文件中的当前数据计算得到的,而第一脚本校验值是根据本地缓存数据中保存的上一次脚本文件数据计算得到的,从而通过比较这两个脚本校验值是否相等可以判断脚本文件中的数据是否修改,当两个脚本文件校验值不相等时,表明脚本文件当前数据与缓存数据中保存的上一次脚本文件数据相比存在修改,否则不存在。

205a、若是,则发送所述脚本文件的当前数据和所述脚本文件的第二脚本校验值。

进一步地,以使得根据所述当前数据加载所述页面内容。具体地,可以将第二脚本校验值添加至脚本文件的http(hypertexttransferprotocol,超文本传输协议)头部,但本发明实施例对此不做限定。

例如如图4所示,web服务器接收到脚本文件a.js获取请求,则根据脚本文件a.js的脚本文件标识提取该脚本文件的当前数据并计算服务器文件中的校验值,将脚本文件a.js获取请求中携带的校验值与计算到的服务器文件中的校验值比较,得到的比较结果为两个校验值不一样,则判断脚本文件a.js数据更新,所以此时web服务器发送脚本文件a.js数据和最新校验值,以使得浏览器根据最新的脚本文件a.js数据加载页面内容,并将该最新数据和最新校验码保存至本地缓存中。

与所述步骤205a并列的步骤205b、若否,则输出所述脚本文件数据未更新响应信息。

其中,所述响应信息为触发从预置缓存数据库中获取所述脚本文件数据的信息。

例如如图5所示,web服务器接收到脚本文件a.js获取请求,则根据脚本文件a.js的脚本文件标识提取该脚本文件的当前数据并计算服务器文件中的校验值,将脚本文件a.js获取请求中携带的校验值与计算到的服务器文件中的校验值比较,得到的比较结果为两个校验值相同,则判断脚本文件a.js数据未更新,所以此时不再发送脚本文件数据而是返回空内容的响应信息,以触发浏览器从本地缓存中直接提取该脚本文件数据进行使用。

对于本发明实施例,当判断脚本文件数据未更新时,则触发直接从浏览器本地缓存中直接提取缓存数据加载网页内容,无需重新获取,从而提高了数据获取的效率,进而提高了网页内容加载的效率。

为了提高资源利用率,对于本发明实施例所述步骤205a之后还可以包括206a、触发删除所述脚本文件的数据和所述脚本文件的第一脚本校验值。

对于本发明实施例,当脚本文件数据更新时,此时本地缓存中的脚本文件数据和第一脚本校验值则为无效数据,所以触发浏览器对该脚本文件的缓存数据进行删除,可以避免无效数据占用存储空间的问题,提高了网络资源利用率。

207a、将所述脚本文件的当前数据和所述脚本文件的第二脚本校验值添加至所述预置缓存数据库。

通过上述步骤206a和本步骤所述的方法,可以将浏览器本地缓存数据进行更新,从而使得当浏览器再次加载该页面内容时,可以根据更新后的数据判断各个脚本文件数据发生修改,并进一步的根据更新后的缓存数据加载页面内容或者再次对该缓存数据进行更新的,从而确保了本地缓存数据的时效性,提高了网页内容加载的准确性。

进一步的,根据步骤201-207a所述的方法,本发明实施例还可以提供一结合具体的应用场景下加载网页内容的实施方式,所述实施过程分为五个执行步骤,具体的,如下所述:

第一步、服务器在检测浏览器需要加载网页a的网页内容时,创建加载网页a所需要的全部3个脚本文件的脚本文件集合,且这3个脚本文件中均保存有最新的脚本文件数据。

第二步、首先接收脚本文件x.js的获取请求,同时得到脚本文件获取请求中携带的与脚本文件对应的标识信息x.js、y.js和z.js,并得到各个获取请求中携带的第一校验值x1、y1和z1。

第三步、根据脚本文件x.js的标识信息x.js从服务器中提取脚本文件x.js中的当前数据,并调用预置函数根据该当前数据计算得到脚本文件x.js的第二脚本校验值x2,比较脚本文件x.js的第一脚本校验值x1和第二脚本校验值x2,且两个脚本校验值不相等,则发送脚本文件x.js的当前数据和第二校验值x2至浏览器。

第四步、再依次对脚本文件y.js、脚本文件z.js采取同样的提取脚本文件当前数据和计算当前脚本校验值处理方式,并得到脚本文件y.js和脚本文件x.js的数据均未更新的判断结果,则此时返回空内容触发浏览器从本地缓存中获取脚本文件y.js和脚本文件z.js缓存数据。

第五步、浏览器根据脚本文件x.js的最新数据、脚本文件y.js和脚本文件z.js的缓存数据对网页内容进行加载,并在本次缓存数据库中将脚本文件x.js数据进行更新。

但需要说明的是,上述应用场景所述的具体实施方式仅仅是示例性的,并非本发明实施例的唯一具体实施方式,在此仅为符合本发明所述的方法的优化实施方式之一。

进一步的,本发明实施例还提供了一种网页内容的加载方法,该方法应用于客户端侧,如图6所示,该方法包括:

301、查看缓存的当前待加载的脚本文件的脚本文件标识及第一脚本校验值。

其中,待加载脚本文件可以为用于客户端加载页面对应的html文件中的多个js文件,而脚本文件标识可以为与脚本文件唯一对应的脚本文件名称,也可以为预先设定的与脚本文件对应的序号,本发明实施例对此不做具体限定。

在本发明实施例中,当客户端检测到用户需要浏览页面时,客户端确定加载该页面内容对应的脚本文件,并以此查看查看各个待加载文件的脚本文件标识和第一校验值。需要说明的是,客户端查看得到的待加载脚本文件的第一校验值可以为0,当第一脚本校验值为0时,表明客户端内当前并没有保存该脚本文件的缓存数据,当客户端将第一脚本校验值0发送至服务器时,服务器可以直接将该脚本文件数据进行返回,以便于客户端根据数据对页面进行加载。

302、向服务器发送脚本文件获取请求。

其中,所述脚本文件获取请求中携带有与所述脚本文件对应的脚本文件标识和第一脚本校验值。

在本发明实施例中,在客户端向数据接收服务器发送脚本文件获取请求之后,首先,服务器会根据接收到脚本文件标识在服务器数据库内进行查找获取,与该脚本文件标识对应的当前数据;然后,服务器根据获取到的脚本文件当前数据计算第二脚本校验值,并将客户端发送的第一脚本校验值和计算得到的第二脚本校验值进行比较,根据第一脚本校验值和第二脚本校验值是否相等,判断服务器中保存的脚本文件当前数据与客户端缓存的脚本文件数据是否相同,并根据比较结果返回相应的响应信息,以便于客户端根据响应信息确定使用加载页面内容的数据。

303、接收服务器返回的响应信息。

如上述步骤中所述响应信息为服务器比较第一脚本校验值和第二脚本校验值是否相等之后返回的,以便于客户端根据响应信息进一步获取加载页面内容的数据。

304a、若响应信息为空,则直接使用缓存的所述脚本文件的数据。

本发明实施例中,若响应信息为空,则表明服务器检测到服务端中保存的脚本文件当前数据和客户端缓存数据相同,也就是说脚本文件数据并未更新,从而客户端可以直接根据脚本文件缓存数据加载页面内容,从而服务器通过发送空的响应信息触发客户端直接使用缓存的脚本文件数据。

与所述步骤304a并列的步骤304b、若响应信息不为空,则使用响应信息携带的脚本文件的数据加载页面。

在本发明实施例中,当服务器检测到服务器中保存的脚本文件当前数据和客户端缓存的脚本文件数据不同时,表明在此期间脚本文件中数据发生修改,客户端无法继续使用缓存数据加载页面内容,所以此时服务器将脚本文件当前数据和根据当前数据计算得到的第二脚本校验值返回给客户端,以便于客户端根据脚本文件当前最新数据加载页面内容。

进一步地,在所述步骤304b之后执行的步骤305b、使用响应信息中的脚本文件替换缓存的所述脚本文件标识对应的脚本文件,并使用响应信息中的第二脚本校验值替换缓存的第一脚本校验值。

在本发明实施例中,当服务器返回的响应信息中携带有脚本文件数据时,表明客户端中缓存的脚本文件数据为数据修改前的无效数据,无法再继续使用来加载页面内容,所以客户端根据服务端返回的脚本文件最新数据和第二校验值对缓存数据进行替换更新,在再次加载页面内容时根据更新后数据的脚本校验值向服务器请求,以便于服务器根据该脚本校验值判断脚本文件数据是否发生修改,进而确定加载页面内容需要的数据。

为了实现上述目的,根据本发明的另一方面,本发明实施例还提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述所述的网页内容的加载方法。

为了实现上述目的,根据本发明的另一方面,本发明实施例还提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述所述的网页内容的加载方法。

进一步的,作为对上述图1所示方法的实现,本发明实施例还提供了一种服务器,用于对上述图1所示的方法进行实现。该装置实施例与前述方法实施例对应,为便于阅读,本装置实施例不再对前述方法实施例中的细节内容进行逐一赘述,但应当明确,本实施例中的服务器能够对应实现前述方法实施例中的全部内容。如图7所示,该服务器包括:接收单元41、判断单元42、发送单元43、输出单元44,其中

接收单元41,可以用于接收脚本文件获取请求,所述脚本文件获取请求中携带有与所述脚本文件对应的脚本文件标识和第一脚本校验值,所述脚本文件中保存有用于加载页面内容的数据。

判断单元42,可以用于根据所述接收单元41接收到的脚本文件获取请求中携带的所述脚本文件标识和所述第一脚本校验值判断所述脚本文件中的数据是否更新。

发送单元43,可以用于若所述判断单元42判断所述脚本文件中的数据更新,则发送所述脚本文件的当前数据和所述脚本文件的第二脚本校验值,以使得根据所述当前数据加载所述页面内容。

输出单元44,可以用于若所述判断单元42判断所述脚本文件中的数据未更新,则输出所述脚本文件数据未更新响应信息,所述响应信息为触发从预置缓存数据库中获取所述脚本文件数据的信息。

进一步的,作为对上述图3所示方法的实现,本发明实施例还提供了另一种服务器,用于对上述图3所示的方法进行实现。该装置实施例与前述方法实施例对应,为便于阅读,本装置实施例不再对前述方法实施例中的细节内容进行逐一赘述,但应当明确,本实施例中的服务器能够对应实现前述方法实施例中的全部内容。如图8所示,该服务器包括:接收单元51、判断单元52、发送单元53、输出单元54,其中

接收单元51,可以用于接收脚本文件获取请求,所述脚本文件获取请求中携带有与所述脚本文件对应的脚本文件标识和第一脚本校验值,所述脚本文件中保存有用于加载页面内容的数据。

判断单元52,可以用于根据所述接收单元51接收到的脚本文件获取请求中携带的所述脚本文件标识和所述第一脚本校验值判断所述脚本文件中的数据是否更新。

发送单元53,可以用于若所述判断单元52判断所述脚本文件中的数据更新,则发送所述脚本文件的当前数据和所述脚本文件的第二脚本校验值,以使得根据所述当前数据加载所述页面内容。

输出单元54,可以用于若所述判断单元52判断所述脚本文件中的数据未更新,则输出所述脚本文件数据未更新响应信息,所述响应信息为触发从预置缓存数据库中获取所述脚本文件数据的信息。

进一步的,所述服务器还包括:创建单元55、提取单元56、计算单元57。

所述创建单元55,可以用于创建脚本文件集合,所述脚本文件集合中包含有全部用于加载所述页面内容需要的数据所对应的脚本文件。

所述接收单元51,具体可以用于依次提取并接收所述脚本文件集合中的所述各个脚本文件的获取请求。

所述提取单元56,可以用于根据所述脚本文件的标识信息提取所述脚本文件的当前数据。

所述计算单元57,可以用于调用预置函数根据所述当前数据计算所述脚本文件的第二脚本校验值。

进一步的,所述判断单元52包括:

比较模块5201,可以用于比较所述脚本文件的第一脚本校验值和所述第二脚本校验值是否相等。

第一判断模块5202,可以用于若所述脚本文件的第一校验值和所述第二脚本校验值相等,则判断所述脚本文件中的数据未更新。

第二判断模块5203,可以用于若所述脚本文件的第一校验值和所述第二脚本校验值不相等,则判断所述脚本文件中的数据更新。

进一步的,所述服务器还包括:

删除单元58,可以用于触发删除所述脚本文件的数据和所述脚本文件的第一脚本校验值。

添加单元59,可以用于将所述脚本文件的当前数据和所述脚本文件的第二脚本校验值添加至所述预置缓存数据库。

进一步的,作为对上述图6所示方法的实现,本发明另一实施例还提供了一种客户端。该装置实施例与前述方法实施例对应,为便于阅读,本装置实施例不再对前述方法实施例中的细节内容进行逐一赘述,但应当明确,本实施例中的客户端能够对应实现前述方法实施例中的全部内容。该客户端应用于提高对页面内容加载的效率,具体如图9所示,该客户端包括:

查看单元61,用于查看缓存的当前待加载的脚本文件的脚本文件标识及第一脚本校验值;

发送单元62,用于向服务器发送脚本文件获取请求,所述脚本文件获取请求中携带有与所述脚本文件对应的脚本文件标识和第一脚本校验值;

接收单元63,用于接收服务器返回的响应信息;

使用单元64,用于若响应信息为空,则直接使用缓存的所述脚本文件的数据;

所述使用单元64,还用于若响应信息不为空,则使用响应信息携带的脚本文件的数据加载页面。

进一步地,所述客户端还包括:

替换单元65,用于使用响应信息中的脚本文件替换缓存的所述脚本文件标识对应的脚本文件,并使用响应信息中的第二脚本校验值替换缓存的第一脚本校验值。

进一步的,作为对上述方法的实现以及上述服务器、客户端的应用,本发明实施例还提供一种网页内容的加载系统,如图10所示,该系统包括:如图7或图8所示的服务器1001及如图9所示的客户端1002。

本发明实施例提供的网页内容的加载方法、服务器和客户端对于现有技术在加载网页内容时,当检测到用于加载网页内容的脚本文件版本信息更新时,则对全部用于加载网页内容的脚本文件进行重新获取,进而根据全部重新获取的脚本文件对网页内容进行加载,本发明通过接收脚本文件获取请求,脚本文件获取请求中携带有与脚本文件对应的脚本文件标识和第一脚本校验值,脚本文件中保存有用于加载页面内容的数据;脚本文件标识和第一脚本校验值判断脚本文件中的数据是否更新;若是,则发送脚本文件的当前数据和脚本文件的第二脚本校验值,以使得根据当前数据加载页面内容;若否,则输出脚本文件数据未更新响应信息,响应信息为触发从预置缓存数据库中获取脚本文件数据的信息,因此相比于现有技术,本发明在客户端对网页内容加载所需要的脚本文件获取时,服务器通过检测各个脚本文件中的数据是否更新,并根据检测结果确定重新获取脚本文件数据或者直接从本地缓存中直接提取缓存数据,可以避免当脚本文件中的数据未更新却仍然重新获取造成的资源和时间浪费的问题,从而可以提高数据获取效率,进而提高了网页内容加载的效率,并且节约了资源。同时,通过客户端在获取到脚本文件更新后的当前数据之后,将本地缓存数据库中的保存的数据进行删除并将更新后的当前数据和校验值进行保存,以便于据此下一次对数据进行判断或者使用,可以在避免无效数据占用存储空间的同时确保数据的准确性。

所述服务器包括处理器和存储器,上述接收单元41、判断单元42、发送单元43、输出单元44等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。

所述客户端包括处理器和存储器,上述查看单元61、发送单元62、接收单元63和使用单元64等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。

处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来提高网页内容加载的效率和资源利用率。

存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram),存储器包括至少一个存储芯片。

本发明实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现所述网页内容的加载方法。

本发明实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行所述归网页内容的加载方法。

本发明实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:接收脚本文件获取请求,所述脚本文件获取请求中携带有与所述脚本文件对应的脚本文件标识和第一脚本校验值,所述脚本文件中保存有用于加载页面内容的数据;根据所述脚本文件标识和所述第一脚本校验值判断所述脚本文件中的数据是否更新;若是,则发送所述脚本文件的当前数据和所述脚本文件的第二脚本校验值,以使得根据所述当前数据加载所述页面内容;

若否,则输出所述脚本文件数据未更新响应信息,所述响应信息为触发从预置缓存数据库中获取所述脚本文件数据的信息。

进一步的,所述接收脚本文件获取请求之后,所述方法还包括:

根据所述脚本文件的标识信息提取所述脚本文件的当前数据;

调用预置函数根据所述当前数据计算所述脚本文件的第二脚本校验值。

进一步的,所述根据所述脚本文件标识和所述第一脚本校验值判断所述脚本文件中的数据是否更新包括:

比较所述脚本文件的第一脚本校验值和所述第二脚本校验值是否相等;

若是,则判断所述脚本文件中的数据未更新;

若否,则判断所述脚本文件中的数据更新。

进一步的,所述接收脚本文件获取请求之前,所述方法还包括:

创建脚本文件集合,所述脚本文件集合中包含有全部用于加载所述页面内容需要的数据所对应的脚本文件;

所述接收脚本文件获取请求包括:

依次提取并接收所述脚本文件集合中的所述各个脚本文件的获取请求。

进一步的,所述若所述脚本文件中的数据更新,则发送所述脚本文件的当前数据和所述脚本文件的第二脚本校验值之后,所述方法还包括:

触发删除所述脚本文件的数据和所述脚本文件的第一脚本校验值;

将所述脚本文件的当前数据和所述脚本文件的第二脚本校验值添加至所述预置缓存数据库。

本发明实施例还提供了另外一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:查看缓存的当前待加载的脚本文件的脚本文件标识及第一脚本校验值;向服务器发送脚本文件获取请求;接收服务器返回的响应信息;若响应信息为空,则直接使用缓存的所述脚本文件的数据;若响应信息不为空,则使用响应信息携带的脚本文件的数据加载页面。

本发明实施例中的设备可以是服务器、pc、pad、手机等。

本发明实施例还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:接收脚本文件获取请求,所述脚本文件获取请求中携带有与所述脚本文件对应的脚本文件标识和第一脚本校验值,所述脚本文件中保存有用于加载页面内容的数据;根据所述脚本文件标识和所述第一脚本校验值判断所述脚本文件中的数据是否更新;若是,则发送所述脚本文件的当前数据和所述脚本文件的第二脚本校验值,以使得根据所述当前数据加载所述页面内容;

若否,则输出所述脚本文件数据未更新响应信息,所述响应信息为触发从预置缓存数据库中获取所述脚本文件数据的信息。

进一步的,所述接收脚本文件获取请求之后,所述方法还包括:

根据所述脚本文件的标识信息提取所述脚本文件的当前数据;

调用预置函数根据所述当前数据计算所述脚本文件的第二脚本校验值。

进一步的,所述根据所述脚本文件标识和所述第一脚本校验值判断所述脚本文件中的数据是否更新包括:

比较所述脚本文件的第一脚本校验值和所述第二脚本校验值是否相等;

若是,则判断所述脚本文件中的数据未更新;

若否,则判断所述脚本文件中的数据更新。

进一步的,所述接收脚本文件获取请求之前,所述方法还包括:

创建脚本文件集合,所述脚本文件集合中包含有全部用于加载所述页面内容需要的数据所对应的脚本文件;

所述接收脚本文件获取请求包括:

依次提取并接收所述脚本文件集合中的所述各个脚本文件的获取请求。

进一步的,所述若所述脚本文件中的数据更新,则发送所述脚本文件的当前数据和所述脚本文件的第二脚本校验值之后,所述方法还包括:

触发删除所述脚本文件的数据和所述脚本文件的第一脚本校验值;

将所述脚本文件的当前数据和所述脚本文件的第二脚本校验值添加至所述预置缓存数据库。

本申请还提供了另外一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序代码:查看缓存的当前待加载的脚本文件的脚本文件标识及第一脚本校验值;向服务器发送脚本文件获取请求;接收服务器返回的响应信息;若响应信息为空,则直接使用缓存的所述脚本文件的数据;若响应信息不为空,则使用响应信息携带的脚本文件的数据加载页面。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。

存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。存储器是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器

(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。

本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

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