CN106250454A - 一种页面脚本的加载方法及装置 - Google Patents
一种页面脚本的加载方法及装置 Download PDFInfo
- Publication number
- CN106250454A CN106250454A CN201610604987.7A CN201610604987A CN106250454A CN 106250454 A CN106250454 A CN 106250454A CN 201610604987 A CN201610604987 A CN 201610604987A CN 106250454 A CN106250454 A CN 106250454A
- Authority
- CN
- China
- Prior art keywords
- script
- url
- timestamp
- page script
- page
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9574—Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
- G06F16/986—Document structures and storage, e.g. HTML extensions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
- G06F9/45529—Embedded in an application, e.g. JavaScript in a Web browser
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请提供了一种页面脚本的加载方法和装置。所述方法包括:浏览器依据待加载页面脚本的URL,在应用服务器预置的时间戳对应表中,提取所述待加载页面脚本的时间戳信息,并添加到所述URL中;其中,所述时间戳对应表包括页面脚本URL和时间戳信息的对应关系,并按照预设频率进行更新;浏览器依据添加后的URL提取相应的页面脚本,进行页面加载。本申请可以减少脚本文件更新带来的工作量。
Description
本发明专利申请是以申请日为2012年4月28日、申请号为201210133521.5、名称为“一种页面脚本的加载方法及装置”的中国发明专利申请为优先权基础提出的在后申请。
技术领域
本申请涉及通信技术领域,特别是涉及一种页面脚本的加载方法和装置。
背景技术
在一个基于Web的***中,页面中的JavaScript(JS)脚本、CSS(Cascading StyleSheet,级联样式表)脚本以及其他需要从外部文件中引入的脚本,称之为assets文件,都需要显示出被引用文件的URL地址。例如,引入一个JS脚本:
<script type=“text/javascript”src=http://a.tbcdn.cn/app/tc/details.js></script>
使用这种引入方式,当服务器端的JS文件更新之后,不能及时更新用户在浏览器端缓存的JS,只有当用户强制刷新页面后,才可以从服务器端下载最新的JS,假如JS的版本发生了很大的变化,老的JS不能兼容新的页面,就会产生Bug,导致用户访问该页面出现障碍。
目前,为解决上述问题,可以在网站服务端引用JS的时候加上最新的时间戳参数,如下所示:
<script type=“text/javascript”src=http://a.tbcdn.cn/app/tc/details.js?t=200910231422></script>
浏览器依据最新的时间戳与缓存文件的时间戳进行对比,若判断URL已经发生了变化,就主动请求服务器获取最新的JS文件,从而保证用户能够浏览到正常的页面。
以上现有技术中存在的问题是,每次更新JS文件都需要对时间戳进行更新,带来很大的工作量,并且修改后的文件还要发布到线上生产环境才能生效,由此带来了很大的修改、测试和发布的成本。
因此,目前需要本领域技术人员解决的一个技术问题就是,提供一种页面脚本的加载机制,以减少脚本文件更新带来的工作量。
发明内容
本申请所要解决的技术问题是提供一种页面脚本的加载方法,以减少脚本文件更新带来的工作量。
本申请还提供了一种页面脚本的加载装置,用以保证上述方法在实际中的应用及实现。
为了解决上述问题,本申请公开了一种页面脚本的加载方法,包括:
浏览器判断应用服务器中是否存在与待加载页面脚本的URL对应的时间戳信息;
若浏览器判定应用服务器中存在与待加载页面脚本的URL对应的时间戳信息,则提取所述与待加载页面脚本的URL对应的时间戳信息,并添加到所述待加载页面脚本的URL中;
依据添加后的URL提取相应的页面脚本,进行页面加载。
优选地,所述浏览器判断应用服务器中是否存在与待加载页面脚本的URL对应的时间戳信息的步骤包括:
浏览器判断应用服务器预置的时间戳对应表中是否包括所述待加载页面脚本的URL,其中,所述时间戳对应表包括页面脚本URL和时间戳信息的对应关系,并按照预设频率进行更新;
若是,则判定应用服务器中存在与待加载页面脚本的URL对应的时间戳信息;
若否,则判定应用服务器中不存在与待加载页面脚本的URL对应的时间戳信息。
优选地,所述方法还包括:
若浏览器判定应用服务器中不存在与待加载页面脚本的URL对应的时间戳信息,则触发所述应用服务器生成所述待加载页面脚本的时间戳信息,并将所述待加载页面脚本的URL和时间戳信息的对应关系添加到所述时间戳对应表中。
优选地,所述页面脚本发布在脚本服务器上,并携带所述页面脚本的名称信息和发布时间。
优选地,所述触发应用服务器生成所述待加载页面脚本的时间戳信息,并将所述待加载页面脚本的URL和时间戳信息的对应关系添加到所述时间戳对应表中的步骤包括:
浏览器向应用服务器发送时间戳对应表添加的请求,触发所述应用服务器依据请求在脚本服务器中提取所述页面脚本的名称信息和发布时间,并由所述页面脚本的名称信息和发布时间生成相应的时间戳信息;
将所述页面脚本URL和时间戳信息的对应关系添加到时间戳对应表中。
优选地,所述依据添加后的URL提取相应的页面脚本,进行页面加载的步骤包括:
在浏览器端的缓存中搜索是否存在符合预设条件的页面脚本,所述预设条件为,与所述添加后的页面脚本URL具备相同URL,且两者时间戳信息一致;
若是,则提取缓存中的页面脚本,若否,则依据添加后的页面脚本URL在脚本服务器提取相应的页面脚本;
对提取的页面脚本进行页面加载。
优选地,所述应用服务器通过以下步骤预置时间戳对应表:
在脚本服务器提取各页面脚本的URL、名称信息和发布时间;
由所述名称信息和发布时间生成对应的页面脚本的时间戳信息;
由所述时间戳信息和URL的对应关系,生成时间戳对应表,并保存在应用服务器。
优选地,所述应用服务器通过以下步骤更新时间戳对应表:
读取时间戳对应表,解析页面脚本URL生成对应的脚本服务器的IP地址;
依据所述IP地址获取对应的页面脚本的发布时间;
判断所述发布时间和时间戳信息中的时间是否一致,若否,则按照所述发布时间对所述时间戳信息进行更新。
优选地,所述脚本服务器有一台或多台,所述脚本服务器有多台时,所述解析页面脚本URL生成对应的脚本服务器的IP地址的步骤包括:
解析页面脚本URL生成对应的脚本服务器的域名;
由所述域名和多个IP地址的映射关系,选取一个IP地址进行访问;
其中所述域名和多个IP地址的映射关系保存在应用服务器端的配置文件中。
优选地,所述脚本服务器与应用服务器为同一服务器或不同的服务器。
本申请还公开了一种页面脚本的加载装置,包括:
判断模块,用于判断应用服务器中是否存在与待加载页面脚本的URL对应的时间戳信息;
时间戳信息添加模块,用于若浏览器判定应用服务器中存在与待加载页面脚本的URL对应的时间戳信息,则提取所述与待加载页面脚本的URL对应的时间戳信息,并添加到所述待加载页面脚本的URL中;
页面脚本加载模块,用于依据添加后的URL提取相应的页面脚本,进行页面加载。
优选地,所述判断模块还用于:
判断应用服务器预置的时间戳对应表中是否包括所述待加载页面脚本的URL,其中,所述时间戳对应表包括页面脚本URL和时间戳信息的对应关系,并按照预设频率进行更新;
若是,则判定应用服务器中存在与待加载页面脚本的URL对应的时间戳信息;
若否,则判定应用服务器中不存在与待加载页面脚本的URL对应的时间戳信息。
优选地,所述装置还包括:
时间戳对应表添加模块,用于若浏览器判定应用服务器中不存在与待加载页面脚本的URL对应的时间戳信息,则触发所述应用服务器生成所述待加载页面脚本的时间戳信息,并将所述待加载页面脚本的URL和时间戳信息的对应关系添加到所述时间戳对应表中。
优选地,所述页面脚本发布在脚本服务器上,并携带所述页面脚本的名称信息和发布时间。
优选地,所述时间戳对应表添加模块包括:
添加请求发送子模块,用于向应用服务器发送时间戳对应表添加的请求,触发所述应用服务器依据请求在脚本服务器中提取所述页面脚本的名称信息和发布时间;
时间戳信息生成子模块,用于由所述页面脚本的名称信息和发布时间生成相应的时间戳信息;
时间戳添加子模块,用于将所述页面脚本URL和时间戳信息的对应关系添加到时间戳对应表中。
优选地,所述页面脚本加载模块包括:
时间戳信息判断子模块,用于在浏览器端的缓存中搜索是否存在符合预设条件的页面脚本,所述预设条件为,与所述添加后的页面脚本URL具备相同URL,且两者时间戳信息一致;若是,则执行缓存提取子模块,若否,则执行服务器提取子模块;
缓存提取子模块,用于提取缓存中的页面脚本;
服务器提取子模块,用于依据添加后的页面脚本URL在脚本服务器提取相应的页面脚本;
加载子模块,用于对提取的页面脚本进行页面加载。
优选地,所述应用服务器采用以下子模块预置时间戳对应表:
页面脚本信息提取子模块,用于在脚本服务器提取各页面脚本的URL、名称信息和发布时间;
时间戳生成子模块,用于由所述名称信息和发布时间生成对应的页面脚本的时间戳信息;
时间戳对应表生成子模块,用于由所述时间戳信息和URL的对应关系,生成时间戳对应表,并保存在应用服务器。
优选地,所述应用服务器采用以下子模块更新时间戳对应表:
URL解析子模块,用于读取时间戳对应表,解析页面脚本URL生成对应的脚本服务器的IP地址;
发布时间获取子模块,用于依据所述IP地址获取对应的页面脚本的发布时间;
时间对比子模块,用于判断所述发布时间和时间戳信息中的时间是否一致,若否,则按照所述发布时间对所述时间戳信息进行更新。
优选地,所述脚本服务器有一台或多台,所述脚本服务器有多台时,所述第一URL解析子模块包括:
域名解析单元,用于解析页面脚本URL生成对应的脚本服务器的域名;
IP地址对应单元,用于由所述域名和多个IP地址的映射关系,选取一个IP地址进行访问;
其中所述域名和多个IP地址的映射关系保存在应用服务器端的配置文件中。
优选地,所述脚本服务器与应用服务器为同一服务器或不同的服务器。
与现有技术相比,本申请具有以下优点:
依据本申请,预置页面脚本URL与时间戳的对应表,在加载页面脚本的时候,无需依据页面脚本的名称信息在脚本服务器中搜索最新的时间戳信息,直接依据页面脚本URL在对应表中即可提取最新的时间戳信息,时间戳对应表按照预设频率会不断更新,因此,服务器中的脚本文件无需具备最新的时间戳,在发布脚本文件时,不需要对时间戳信息进行修改,大大减少了脚本更新带来的工作量。
其次,相比于现有技术中去服务器请求最新时间戳,由于本申请将时间戳对应表置于应用服务器端中,读取速度大大提高,进而可以加快页面脚本的加载速度。
附图说明
图1是本申请的一种页面脚本的加载方法实施例1的流程图;
图2是本申请的一种页面脚本的加载方法实施例2的流程图;
图3是本申请的一种页面脚本的加载装置实施例1的结构框图;
图4是本申请的一种页面脚本的加载装置实施例2的结构框图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
参考图1,其示出了本申请的一种页面脚本的加载方法实施例1的流程图,具体可以包括以下步骤:
步骤101、浏览器依据待加载页面脚本的URL,在应用服务器预置的时间戳对应表中,提取所述待加载页面脚本的时间戳信息,并添加到所述URL中;其中,所述时间戳对应表包括页面脚本URL和时间戳信息的对应关系,并按照预设频率进行更新。
在本申请中,页面脚本和时间戳信息的对应关系由应用服务器生成,并做成对应表的形式,对应表中的时间戳信息按照一定的频率自动更新。因此,在更新页面脚本的时候,不用相应更新时间戳信息,这大大减少了脚本更新带来的工作量。
优选的,所述应用服务器可以通过以下步骤预置时间戳对应表:
子步骤S11、在脚本服务器提取各页面脚本的URL、名称信息和发布时间;
子步骤S12、由所述名称信息和发布时间生成对应的页面脚本的时间戳信息;
子步骤S13、由所述时间戳信息和URL的对应关系,生成时间戳对应表,并保存在应用服务器。
所述页面脚本可以发布在脚本服务器上,并携带所述页面脚本的名称信息和发布时间,应用服务器在脚本服务器提取脚本的名称信息和发布时间并生成相应的时间戳信息,然后由时间戳和URL的对应关系,生成时间戳对应表。
在本申请的一种优选实施例中,所述应用服务器可以按照一定的频率获取脚页面脚本的最新发布时间,然后依据页面脚本的发布时间对对应表中的时间戳信息进行更新。具体的,可以通过以下步骤更新浏览器端的时间戳对应表:
子步骤S21、读取时间戳对应表,解析页面脚本URL生成对应的脚本服务器的IP地址;
子步骤S22、依据所述IP地址获取对应的页面脚本的发布时间;
子步骤S23、判断所述发布时间和时间戳信息中的时间是否一致,若否,则按照所述发布时间对所述时间戳信息进行更新。
读取时间戳对应表可以得到页面脚本的URL,对URL进行解析可以获得页面脚本所保存的应用服务器的IP地址,依据IP地址便可以获得相应的页面脚本的发布时间。在具体的实现中,所述脚本服务器可以有一台或多台,当页面脚本服务器只有一台时,解析脚本URL,便可获取相应的IP地址;所述脚本服务器有多台时,即页面脚本保存在服务器集群的多台服务器上,意味着一个URL地址可以对应多台应用服务器的IP地址,所述解析页面脚本URL生成对应的脚本服务器的IP地址的步骤可以包括:
子步骤S31、解析页面脚本URL生成对应的脚本服务器的域名;
子步骤S32、由所述域名和多个IP地址的映射关系,选取一个IP地址进行访问;
多台服务器可以提高***的吞吐量并提高***的稳定性,不会出现单机出错,全站就不能访问的弊端。其中,所述域名和多个IP地址的映射关系保存在应用服务器端的配置文件中,读取配置文件可获得URL对应的多个IP地址,在选取某一IP地址进行访问时,可以是随机选择,也可以按照一定的预设规则,选择比较空闲的服务器进行访问,本申请对此并不做限制。在具体的实现中,所述多台服务器可以为CDN集群,CDN集群可以依据用户当前所在位置优选距离用户最近的服务器供用户访问,可以大大的提升静态资源(JavaScript脚本,CSS文件,Html文本)等资源的响应和传输速度,减少用户的等待时间。
优选的,所述脚本服务器与应用服务器可以为同一服务器或不同的服务器。
步骤102、浏览器依据添加后的URL提取相应的页面脚本,进行页面加载。
具体的,所述浏览器依据添加后的页面脚本URL提取相应的页面脚本,进行页面加载的步骤可以包括:
子步骤S41、在浏览器端的缓存中搜索是否存在符合预设条件的页面脚本,所述预设条件为,与所述添加后的页面脚本URL具备相同URL,且两者时间戳信息一致;
子步骤S42、若是,则提取缓存中的页面脚本,若否,则依据添加后的页面脚本URL在脚本服务器提取相应的页面脚本;
子步骤S43、对提取的页面脚本进行页面加载。
在时间戳对应表找到页面脚本URL对应的时间戳信息,添加到URL中由于缓存中存在历史加载过的页面脚本,可以将缓存中的页面脚本的时间戳信息与添加的时间戳信息进行对比,若一致,则说明缓存中已有新版本的页面脚本,若不一致,说明缓存中的页面脚本是未更新的版本,可以在脚本服务器提取最新的页面脚本。可以依据添加时间戳信息的URL,提取发布时间与时间戳信息一致页面脚本。
参考图2,其示出了本申请的一种页面脚本的加载方法实施例2的流程图,具体可以包括以下步骤:
步骤201、浏览器判断应用服务器预置的时间戳对应表中是否包括所述待加载页面脚本的URL,若是,则执行步骤203;若否,则执行步骤202和步骤203,其中,所述时间戳对应表包括页面脚本URL和时间戳信息的对应关系,并按照预设频率进行更新。
步骤202、触发应用服务器生成该脚本的时间戳信息,并将该脚本的URL和时间戳信息的对应关系添加到所述时间戳对应表中。
在具体的实现中,所述步骤202可以包括:
子步骤S61、浏览器向应用服务器发送时间戳对应表添加的请求;
子步骤S62、应用服务器依据请求在脚本服务器中提取所述页面脚本的名称信息和发布时间;
子步骤S63、应用服务器由所述页面脚本的名称信息和发布时间生成相应的时间戳信息;
子步骤S64、应用服务器将所述页面脚本URL和时间戳信息的对应关系发送到浏览器,浏览器将所述对应关系添加到时间戳对应表中。
预置时间戳对应表后,若应用服务器端添加了新的页面脚本,在对这些新的页面脚本进行加载时,对应表中并不包括待加载的页面脚本及其对应的时间戳信息,因此,还需判断时间戳对应表中是否包含页面脚本URL,若不包括,则向应用服务器发送时间戳对应表的添加请求,触发应用服务器生成该页面脚本与其时间戳信息的对应关系,并添加到时间戳对应表中。
步骤203、浏览器依据待加载页面脚本的URL,在应用服务器预置的时间戳对应表中,提取所述待加载页面脚本的时间戳信息,并添加到所述URL中;
步骤204、浏览器依据添加后的URL提取相应的页面脚本,进行页面加载。
综上所述,依据本申请,预置页面脚本URL与时间戳的对应表,在加载页面脚本的时候,无需依据页面脚本的名称信息在脚本服务器中搜索最新的时间戳信息,直接依据页面脚本URL在对应表中即可提取最新的时间戳,时间戳对应表按照预设频率会不断更新,因此,服务器中的脚本文件无需具备最新的时间戳,在发布脚本文件时,不需要对时间戳信息进行修改,这大大减少了脚本更新带来的工作量。
其次,相比于现有技术中去服务器请求最新时间戳,由于本申请将时间戳对应表置于应用服务器中,读取速度大大提高,进而可以加快页面脚本的加载速度。
对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
参考图3,其示出了本申请的一种浏览器端加载页面脚本的装置实施例1的结构框图,具体可以包括以下模块:
时间戳信息添加模块302,用于浏览器依据待加载页面脚本的URL,在应用服务器预置的时间戳对应表中,提取所述待加载页面脚本的时间戳信息,并添加到所述URL中;
页面脚本加载模块303,用于浏览器依据添加后的URL提取相应的页面脚本,进行页面加载。
对应应用服务器一侧,可包括时间戳对应表预置模块301,用于应用服务器预置时间戳对应表,所述时间戳对应表包括页面脚本URL和时间戳信息的对应关系,并按照预设频率进行更新。
在本申请的一种优选实施例中,所述页面脚本发布可以在脚本服务器上,并携带所述页面脚本的名称信息和发布时间。
在本申请的一种优选实施例中,所述应用服务器可以通过以下子模块预置时间戳对应表:
第一页面脚本信息提取子模块,用于在脚本服务器提取各页面脚本的URL、名称信息和发布时间;
第一时间戳信息生成子模块,用于由所述名称信息和发布时间生成对应的页面脚本的时间戳信息;
第一时间戳对应表生成子模块,用于由所述时间戳信息和URL的对应关系,生成时间戳对应表,并保存在应用服务器。
在本申请的一种优选实施例中,所述应用服务器可以通过以下子模块更新时间戳对应表:
第一URL解析子模块,用于读取时间戳对应表,解析页面脚本URL生成对应的脚本服务器的IP地址;
第一发布时间获取子模块,用于依据所述IP地址获取对应的页面脚本的发布时间;
第一时间对比子模块,用于判断所述发布时间和时间戳信息中的时间是否一致,若否,则按照所述发布时间对所述时间戳信息进行更新。
在本申请的一种优选实施例中,所述脚本服务器可以有一台或多台,所述脚本服务器有多台时,所述第一URL解析子模块或第二URL解析子模块可以包括:
域名解析子模块,用于解析页面脚本URL生成对应的脚本服务器的域名;
IP地址对应子模块,用于由所述域名和多个IP地址的映射关系,选取一个IP地址进行访问;
其中所述域名和多个IP地址的映射关系保存在应用服务器端的配置文件中。
在具体的实现中,所述脚本服务器与应用服务器可以为同一服务器或不同的服务器。
在本申请的另一种优选实施例中,所述页面脚本加载模块可以包括:
时间戳信息判断子模块,用于在浏览器端的缓存中搜索是否存在符合预设条件的页面脚本,所述预设条件为,与所述添加后的页面脚本URL具备相同URL,且两者时间戳信息一致,若是,则执行缓存提取子模块,若否,则执行服务器提取子模块;
缓存提取子模块,用于提取缓存中的页面脚本;
服务器提取子模块,用于依据添加后的页面脚本URL在服务器提取相应的页面脚本;
加载子模块,用于对提取的页面脚本进行页面加载。
参考图4,其示出了本申请的一种页面脚本的加载装置实施例2的结构框图,具体可以包括以下模块:
时间戳对应表预置模块401,用于应用服务器预置时间戳对应表,所述时间戳对应表包括页面脚本URL和时间戳信息的对应关系,并按照预设频率进行更新;
时间戳对应表判断模块402,用于浏览器判断应用服务器的时间戳对应表中是否包括所述待加载页面脚本的URL,若是,则执行时间戳信息添加模块404,若否,则执行时间戳对应表添加模块403和时间戳信息添加模块404;
时间戳对应表添加模块403,用于生成该脚本的时间戳信息,并将该脚本的URL和时间戳信息的对应关系添加到所述时间戳对应表中。
时间戳信息添加模块404,用于浏览器依据待加载页面脚本的URL,在应用服务器预置的时间戳对应表中,提取所述待加载页面脚本的时间戳信息,并添加到所述URL中;
页面脚本加载模块405,用于浏览器依据添加后的URL提取相应的页面脚本,进行页面加载。
在本申请的一种优选实施例中,所述时间戳对应表添加模块可以包括:
添加请求发送模块,用于浏览器向应用服务器发送时间戳对应表添加的请求;
第二页面脚本信息提取子模块,用于应用服务器依据请求在脚本服务器中提取所述页面脚本的名称信息和发布时间;
第二时间戳信息生成子模块,用于应用服务器由所述页面脚本的名称信息和发布时间生成相应的时间戳信息;
时间戳添加子模块,用于应用服务器将所述页面脚本URL和时间戳信息的对应关系发送到浏览器,浏览器将所述对应关系添加到时间戳对应表中。
由于所述装置实施例基本相应于前述图1和图2所示的方法实施例,故本实施例的描述中未详尽之处,可以参见前述实施例中的相关说明,在此就不赘述了。
本申请可用于众多通用或专用的计算***环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器***、基于微处理器的***、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何***或设备的分布式计算环境等等。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本申请所提供的一种页面脚本的加载方法,以及,一种页面脚本的加载装置进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (20)
1.一种页面脚本的加载方法,其特征在于,包括:
浏览器判断应用服务器中是否存在与待加载页面脚本的URL对应的时间戳信息;
若浏览器判定应用服务器中存在与待加载页面脚本的URL对应的时间戳信息,则提取所述与待加载页面脚本的URL对应的时间戳信息,并添加到所述待加载页面脚本的URL中;
依据添加后的URL提取相应的页面脚本,进行页面加载。
2.根据权利要求1所述的方法,其特征在于,所述浏览器判断应用服务器中是否存在与待加载页面脚本的URL对应的时间戳信息的步骤包括:
浏览器判断应用服务器预置的时间戳对应表中是否包括所述待加载页面脚本的URL,其中,所述时间戳对应表包括页面脚本URL和时间戳信息的对应关系,并按照预设频率进行更新;
若是,则判定应用服务器中存在与待加载页面脚本的URL对应的时间戳信息;
若否,则判定应用服务器中不存在与待加载页面脚本的URL对应的时间戳信息。
3.根据权利要求2所述的方法,其特征在于,还包括:
若浏览器判定应用服务器中不存在与待加载页面脚本的URL对应的时间戳信息,则触发所述应用服务器生成所述待加载页面脚本的时间戳信息,并将所述待加载页面脚本的URL和时间戳信息的对应关系添加到所述时间戳对应表中。
4.根据权利要求3所述的方法,其特征在于,所述页面脚本发布在脚本服务器上,并携带所述页面脚本的名称信息和发布时间。
5.根据权利要求4所述的方法,其特征在于,所述触发应用服务器生成所述待加载页面脚本的时间戳信息,并将所述待加载页面脚本的URL和时间戳信息的对应关系添加到所述时间戳对应表中的步骤包括:
浏览器向应用服务器发送时间戳对应表添加的请求,触发所述应用服务器依据请求在脚本服务器中提取所述页面脚本的名称信息和发布时间,并由所述页面脚本的名称信息和发布时间生成相应的时间戳信息;
将所述页面脚本URL和时间戳信息的对应关系添加到时间戳对应表中。
6.根据权利要求4或5所述的方法,其特征在于,所述依据添加后的URL提取相应的页面脚本,进行页面加载的步骤包括:
在浏览器端的缓存中搜索是否存在符合预设条件的页面脚本,所述预设条件为,与所述添加后的页面脚本URL具备相同URL,且两者时间戳信息一致;
若是,则提取缓存中的页面脚本,若否,则依据添加后的页面脚本URL在脚本服务器提取相应的页面脚本;
对提取的页面脚本进行页面加载。
7.根据权利要求4所述的方法,其特征在于,所述应用服务器通过以下步骤预置时间戳对应表:
在脚本服务器提取各页面脚本的URL、名称信息和发布时间;
由所述名称信息和发布时间生成对应的页面脚本的时间戳信息;
由所述时间戳信息和URL的对应关系,生成时间戳对应表,并保存在应用服务器。
8.根据权利要求7所述的方法,其特征在于,所述应用服务器通过以下步骤更新时间戳对应表:
读取时间戳对应表,解析页面脚本URL生成对应的脚本服务器的IP地址;
依据所述IP地址获取对应的页面脚本的发布时间;
判断所述发布时间和时间戳信息中的时间是否一致,若否,则按照所述发布时间对所述时间戳信息进行更新。
9.根据权利要求8所述的方法,其特征在于,所述脚本服务器有一台或多台,所述脚本服务器有多台时,所述解析页面脚本URL生成对应的脚本服务器的IP地址的步骤包括:
解析页面脚本URL生成对应的脚本服务器的域名;
由所述域名和多个IP地址的映射关系,选取一个IP地址进行访问;
其中所述域名和多个IP地址的映射关系保存在应用服务器端的配置文件中。
10.根据权利要求4或5或7或8或9所述的方法,其特征在于,所述脚本服务器与应用服务器为同一服务器或不同的服务器。
11.一种页面脚本的加载装置,其特征在于,包括:
判断模块,用于判断应用服务器中是否存在与待加载页面脚本的URL对应的时间戳信息;
时间戳信息添加模块,用于若浏览器判定应用服务器中存在与待加载页面脚本的URL对应的时间戳信息,则提取所述与待加载页面脚本的URL对应的时间戳信息,并添加到所述待加载页面脚本的URL中;
页面脚本加载模块,用于依据添加后的URL提取相应的页面脚本,进行页面加载。
12.根据权利要求11所述的装置,其特征在于,所述判断模块还用于:
判断应用服务器预置的时间戳对应表中是否包括所述待加载页面脚本的URL,其中,所述时间戳对应表包括页面脚本URL和时间戳信息的对应关系,并按照预设频率进行更新;
若是,则判定应用服务器中存在与待加载页面脚本的URL对应的时间戳信息;
若否,则判定应用服务器中不存在与待加载页面脚本的URL对应的时间戳信息。
13.根据权利要求12所述的装置,其特征在于,还包括:
时间戳对应表添加模块,用于若浏览器判定应用服务器中不存在与待加载页面脚本的URL对应的时间戳信息,则触发所述应用服务器生成所述待加载页面脚本的时间戳信息,并将所述待加载页面脚本的URL和时间戳信息的对应关系添加到所述时间戳对应表中。
14.根据权利要求13所述的装置,其特征在于,所述页面脚本发布在脚本服务器上,并携带所述页面脚本的名称信息和发布时间。
15.根据权利要求14所述的装置,其特征在于,所述时间戳对应表添加模块包括:
添加请求发送子模块,用于向应用服务器发送时间戳对应表添加的请求,触发所述应用服务器依据请求在脚本服务器中提取所述页面脚本的名称信息和发布时间;
时间戳信息生成子模块,用于由所述页面脚本的名称信息和发布时间生成相应的时间戳信息;
时间戳添加子模块,用于将所述页面脚本URL和时间戳信息的对应关系添加到时间戳对应表中。
16.根据权利要求14或15所述的装置,其特征在于,所述页面脚本加载模块包括:
时间戳信息判断子模块,用于在浏览器端的缓存中搜索是否存在符合预设条件的页面脚本,所述预设条件为,与所述添加后的页面脚本URL具备相同URL,且两者时间戳信息一致;若是,则执行缓存提取子模块,若否,则执行服务器提取子模块;
缓存提取子模块,用于提取缓存中的页面脚本;
服务器提取子模块,用于依据添加后的页面脚本URL在脚本服务器提取相应的页面脚本;
加载子模块,用于对提取的页面脚本进行页面加载。
17.根据权利要求14所述的装置,其特征在于,所述应用服务器采用以下子模块预置时间戳对应表:
页面脚本信息提取子模块,用于在脚本服务器提取各页面脚本的URL、名称信息和发布时间;
时间戳生成子模块,用于由所述名称信息和发布时间生成对应的页面脚本的时间戳信息;
时间戳对应表生成子模块,用于由所述时间戳信息和URL的对应关系,生成时间戳对应表,并保存在应用服务器。
18.根据权利要求17所述的装置,其特征在于,所述应用服务器采用以下子模块更新时间戳对应表:
URL解析子模块,用于读取时间戳对应表,解析页面脚本URL生成对应的脚本服务器的IP地址;
发布时间获取子模块,用于依据所述IP地址获取对应的页面脚本的发布时间;
时间对比子模块,用于判断所述发布时间和时间戳信息中的时间是否一致,若否,则按照所述发布时间对所述时间戳信息进行更新。
19.根据权利要求18所述的装置,其特征在于,所述脚本服务器有一台或多台,所述脚本服务器有多台时,所述第一URL解析子模块包括:
域名解析单元,用于解析页面脚本URL生成对应的脚本服务器的域名;
IP地址对应单元,用于由所述域名和多个IP地址的映射关系,选取一个IP地址进行访问;
其中所述域名和多个IP地址的映射关系保存在应用服务器端的配置文件中。
20.根据权利要求14或15或17或18或19所述的装置,其特征在于,所述脚本服务器与应用服务器为同一服务器或不同的服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610604987.7A CN106250454B (zh) | 2012-04-28 | 2012-04-28 | 一种页面脚本的加载方法及装置 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610604987.7A CN106250454B (zh) | 2012-04-28 | 2012-04-28 | 一种页面脚本的加载方法及装置 |
CN201210133521.5A CN103377064B (zh) | 2012-04-28 | 2012-04-28 | 一种页面脚本的加载方法及装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210133521.5A Division CN103377064B (zh) | 2012-04-28 | 2012-04-28 | 一种页面脚本的加载方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106250454A true CN106250454A (zh) | 2016-12-21 |
CN106250454B CN106250454B (zh) | 2020-04-14 |
Family
ID=49462228
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610604987.7A Active CN106250454B (zh) | 2012-04-28 | 2012-04-28 | 一种页面脚本的加载方法及装置 |
CN201210133521.5A Active CN103377064B (zh) | 2012-04-28 | 2012-04-28 | 一种页面脚本的加载方法及装置 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210133521.5A Active CN103377064B (zh) | 2012-04-28 | 2012-04-28 | 一种页面脚本的加载方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN106250454B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107015826A (zh) * | 2017-03-16 | 2017-08-04 | 腾讯科技(深圳)有限公司 | 脚本文件加载方法、终端以及服务器 |
CN107483591A (zh) * | 2017-08-22 | 2017-12-15 | 中国银行股份有限公司 | 一种脚本文件同步方法及装置 |
CN109391649A (zh) * | 2017-08-04 | 2019-02-26 | 阿里巴巴集团控股有限公司 | 页面加载的方法、装置和*** |
CN109976840A (zh) * | 2017-12-27 | 2019-07-05 | 航天信息股份有限公司 | 一种基于前后台分离平台下实现多语言自动适配的方法及*** |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106095874A (zh) * | 2016-06-03 | 2016-11-09 | 青岛海信移动通信技术股份有限公司 | 一种显示页面的方法和设备 |
CN107526678B (zh) * | 2016-06-22 | 2020-08-25 | 平安科技(深圳)有限公司 | Web应用程序的测试方法和装置 |
CN106293746B (zh) * | 2016-08-12 | 2020-01-31 | 福建天晴数码有限公司 | 浏览器脚本的更新方法及*** |
CN107885755B (zh) * | 2016-09-30 | 2021-10-22 | 阿里巴巴集团控股有限公司 | 应用资源信息的控制方法及装置 |
CN106776924B (zh) * | 2016-11-30 | 2021-05-11 | 北京奇虎科技有限公司 | 网页页面预览方法及装置 |
CN106648784B (zh) * | 2016-12-27 | 2021-02-05 | Tcl科技集团股份有限公司 | 一种基于android***的OTA升级方法及***、android终端 |
CN110334295A (zh) * | 2019-05-08 | 2019-10-15 | 北京芯盾时代科技有限公司 | 网站页面修改的方法、装置及*** |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102075409A (zh) * | 2009-11-24 | 2011-05-25 | 华为技术有限公司 | 请求消息处理方法、***及负载均衡器设备 |
CN102096584A (zh) * | 2009-12-15 | 2011-06-15 | 阿里巴巴集团控股有限公司 | 一种页面脚本时间戳的修改方法、设备和*** |
US20110173158A1 (en) * | 2010-01-14 | 2011-07-14 | Addonmail | Searching and retrieving files in computer networks |
CN102402588A (zh) * | 2011-10-26 | 2012-04-04 | 百度在线网络技术(北京)有限公司 | 一种对页面中的页面脚本进行预触发处理的设备和方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7120862B1 (en) * | 1998-12-01 | 2006-10-10 | Lucent Technologies Inc. | Method and apparatus for persistent access to Web resources using variable time-stamps |
CN100499637C (zh) * | 2004-10-26 | 2009-06-10 | 华为技术有限公司 | 一种通讯***中获取信息的方法 |
WO2010043025A1 (en) * | 2008-10-19 | 2010-04-22 | Research In Motion Limited | Web application framework for enabling the creation of applications that provide an interface with clients that is independent of scripting capability |
US9262138B2 (en) * | 2010-05-27 | 2016-02-16 | Salesforce.Com, Inc. | Adding directives for JavaScript files directly into source code in a multi-tenant database environment |
CN102255745A (zh) * | 2011-01-18 | 2011-11-23 | 北京开心人信息技术有限公司 | 一种管理js或css文件的方法及*** |
-
2012
- 2012-04-28 CN CN201610604987.7A patent/CN106250454B/zh active Active
- 2012-04-28 CN CN201210133521.5A patent/CN103377064B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102075409A (zh) * | 2009-11-24 | 2011-05-25 | 华为技术有限公司 | 请求消息处理方法、***及负载均衡器设备 |
CN102096584A (zh) * | 2009-12-15 | 2011-06-15 | 阿里巴巴集团控股有限公司 | 一种页面脚本时间戳的修改方法、设备和*** |
US20110173158A1 (en) * | 2010-01-14 | 2011-07-14 | Addonmail | Searching and retrieving files in computer networks |
CN102402588A (zh) * | 2011-10-26 | 2012-04-04 | 百度在线网络技术(北京)有限公司 | 一种对页面中的页面脚本进行预触发处理的设备和方法 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107015826A (zh) * | 2017-03-16 | 2017-08-04 | 腾讯科技(深圳)有限公司 | 脚本文件加载方法、终端以及服务器 |
CN107015826B (zh) * | 2017-03-16 | 2020-09-04 | 腾讯科技(深圳)有限公司 | 脚本文件加载方法、终端以及服务器 |
CN109391649A (zh) * | 2017-08-04 | 2019-02-26 | 阿里巴巴集团控股有限公司 | 页面加载的方法、装置和*** |
CN107483591A (zh) * | 2017-08-22 | 2017-12-15 | 中国银行股份有限公司 | 一种脚本文件同步方法及装置 |
CN109976840A (zh) * | 2017-12-27 | 2019-07-05 | 航天信息股份有限公司 | 一种基于前后台分离平台下实现多语言自动适配的方法及*** |
CN109976840B (zh) * | 2017-12-27 | 2022-03-04 | 航天信息股份有限公司 | 一种基于前后台分离平台下实现多语言自动适配的方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN103377064B (zh) | 2016-08-31 |
CN106250454B (zh) | 2020-04-14 |
CN103377064A (zh) | 2013-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106250454A (zh) | 一种页面脚本的加载方法及装置 | |
RU2618910C2 (ru) | Способ и устройство для отображения информации | |
CN105843815B (zh) | 页面评论处理方法、装置和浏览器 | |
CN102663062B (zh) | 一种处理搜索结果中无效链接的方法及装置 | |
US8527862B2 (en) | Methods for making ajax web applications bookmarkable and crawlable and devices thereof | |
CN109033403B (zh) | 用于搜索区块链数据的方法、装置及存储介质 | |
US9582590B2 (en) | Method and system for presenting a navigation path for enabling retrieval of content | |
CN103389983A (zh) | 一种用于网络爬虫***的网页内容抓取方法及装置 | |
CN103139279A (zh) | 文件访问方法和*** | |
CN103577427A (zh) | 基于浏览器内核的网页爬取方法、装置及包含该装置的浏览器 | |
CN110266661A (zh) | 一种授权方法、装置及设备 | |
CN102567339A (zh) | 一种获取起始页的方法、装置和*** | |
CN103475749A (zh) | 一种跨域通信方法及装置 | |
US20230205826A1 (en) | Systems and Method for Domain Mapping | |
CN111814024A (zh) | 分布式数据采集方法、***及存储介质 | |
CN104182425A (zh) | 一种多语种网站的静态页面生成方法 | |
CN103475676A (zh) | 一种用于提供页面主体信息的方法、装置、设备和*** | |
CN100504877C (zh) | 一种Web页面动作收藏方法和装置 | |
CN105528369A (zh) | 网页转码方法、装置以及服务器 | |
JP2014157577A (ja) | 履歴管理システム、及び履歴管理方法 | |
Badawi et al. | Maintaining the search engine freshness using mobile agent | |
CN102332019B (zh) | 一种web网站转换到wap网站的方法及*** | |
CN103605449A (zh) | 静态页面的交互方法及装置 | |
EP3238105A1 (en) | Application partial deep link to a corresponding resource | |
CN105338091A (zh) | 高传输效率的个性化信息界面显示方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |