CN110096659B - 一种页面显示方法、装置、设备及可读存储介质 - Google Patents
一种页面显示方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN110096659B CN110096659B CN201910239741.8A CN201910239741A CN110096659B CN 110096659 B CN110096659 B CN 110096659B CN 201910239741 A CN201910239741 A CN 201910239741A CN 110096659 B CN110096659 B CN 110096659B
- Authority
- CN
- China
- Prior art keywords
- server
- markup language
- access request
- page
- hypertext markup
- 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.)
- Active
Links
Images
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/972—Access to data in other repository systems, e.g. legacy data or dynamic Web page generation
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明提供了一种页面显示方法、装置、设备及可读存储介质,应用于客户端,所述方法包括:其特征在于,包括:发送针对目标页面的第一访问请求至服务器;接收服务器返回的针对所述访问请求的超文本标记语言html;在浏览器渲染所述超文本标记语言html时,静态资源请求失败,则在浏览器缓存cookie中添加降级标识;根据所述降级标识生成针对所述目标页面的第二访问请求,并发送至所述服务器;接收所述服务器返回的备用静态资源;根据所述备用静态资源,重新渲染所述超文本标记语言html,并展示所述目标页面。解决了现有技术中基于网页应用或网页加载时,静态资源请求失败,导致服务不可用的问题。
Description
技术领域
本发明涉及计算机通信领域,特别是涉及一种页面显示方法、装置、设备及可读存储介质。
背景技术
随着移动互联网和计算机技术的快速发展,依赖智能移动终端的网页应用也得以飞速发展,其中,网页应用或者普通网站中的网页加载对于静态资源的依赖性极强,而在静态资源加载失败的情况下,网页应用或者网页基本处于无法交互的状态,尤其是在基于CDN(Content Delivery Network,内容分发网络)的缓存服务器出现故障,无法响应用户的网页请求时,导致网页应用或者网页无法使用的问题。
所以,如何在基于网页应用或网页加载失败时,保证服务仍然可用,是本发明要解决的技术问题。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种页面显示方法和相应的一种页面显示装置。
根据本发明的第一方面,本发明实施例公开了一种页面显示方法,应用于客户端,具体包括:
发送针对目标页面的第一访问请求至服务器;
接收服务器返回的针对所述访问请求的超文本标记语言html;
在浏览器渲染所述超文本标记语言html时,静态资源请求失败,则在浏览器缓存cookie中添加降级标识;
根据所述降级标识生成针对所述目标页面的第二访问请求,并发送至所述服务器;
接收所述服务器返回的备用静态资源;
根据所述备用静态资源,重新渲染所述超文本标记语言html,并展示所述目标页面。
根据本发明的第二方面,本发明实施例公开了一种页面显示方法,应用于服务器,具体包括:
响应于客户端发送的针对目标页面的访问请求,获取所述访问请求中的降级标识;
所述降级标识符合预设值,则将所述访问请求转发至备用服务器,获取所述目标页面的备用静态资源;
将所述目标页面的备用静态资源发送至所述客户端。
根据本发明的第三方面,本发明实施例公开了一种页面显示装置,应用于客户端,具体包括:
第一访问请求发送模块,用于发送针对目标页面的第一访问请求至服务器;
超文本标记语言接收模块,用于接收服务器返回的针对所述访问请求的超文本标记语言html;
降级标识添加模块,用于在浏览器渲染所述超文本标记语言html时,静态资源请求失败,则在浏览器缓存cookie中添加降级标识;
第二访问请求发送模块,用于根据所述降级标识生成针对所述目标页面的第二访问请求,并发送至所述服务器;
备用超文本标记语言接收模块,用于接收所述服务器返回的备用静态资源;
目标页面生成模块,用于根据所述备用静态资源,重新渲染所述超文本标记语言html,并展示所述目标页面。
根据本发明的第四方面,本发明实施例公开了一种页面显示装置,应用于服务器,具体包括:
降级标识获取模块,用于响应于客户端发送的针对目标页面的访问请求,获取所述访问请求中的降级标识;
备用静态资源获取模块,用于所述降级标识符合预设值,则将所述访问请求转发至备用服务器,获取所述目标页面的备用静态资源;
备用超文本标记语言发送模块,用于将所述目标页面的备用静态资源发送至所述客户端。
根据本发明的第五方面,提供了一种设备,包括:处理器、存储器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如前述的页面显示方法。
根据本发明的第六方面,提供了一种可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够实现前述的页面显示方法。
本发明实施例包括以下优点,当在客户端渲染从服务器接收到的静态资源渲染失败时,就触发降级机制,当用户确认转换通道,则立即向服务器请求备用静态资源,具备有效保证了服务可用性的有益效果。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明的一种页面显示方法实施例的步骤流程图;
图2是本发明的一种页面显示方法实施例的步骤流程图;
图2A是本发明的页面显示流程示意图;
图3是本发明的一种页面显示装置实施例的结构框图;
图4是本发明的一种页面显示装置实施例的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
名词解释:
CDN,全称是Content Delivery Network,即内容分发网络。CDN是构建在网络之上的内容分发网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。CDN的关键技术主要有内容存储和分发技术。
Cookie,有时也用其复数形式Cookies,指某些网站为了辨别用户身份、进行session跟踪而储存在用户本地终端上的数据(通常经过加密)。可以叫做浏览器缓存。
sessionStorage,webstorage特性的API之一,用于临时保存同一窗口(或标签页)的数据,在关闭窗口或标签页之后将会删除这些数据,但刷新页面或使用“前进”、“后退按钮”后sessionStorage仍然存在。
localStorage,webstorage特性的API之一,用于将大量数据(最大5M)保存在浏览器中,保存后数据永远存在不会失效过期,除非手动清除。
HTML,超文本标记语言,标准通用标记语言下的一个应用。是网页制作必备的编程语言“超文本”就是指页面内可以包含图片、链接,甚至音乐、程序等非文字元素。超文本标记语言的结构包括“头”部分(Head)、和“主体”部分(Body),其中“头”部提供关于网页的信息,“主体”部分提供网页的具体内容。
Script,HTML标签,用于定义客户端脚本。
DNS,域名系统,全称Domain Name System,是互联网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。
TCP/IP,互联网协议(Internet Protocol Suite)是一个网络通信模型,以及一整个网络传输协议家族,为互联网的基础通信架构。它常被通称为TCP/IP协议族(英语:TCP/IP Protocol Suite,或TCP/IP Protocols),简称TCP/IP。
页面referer,HTTP Referer是header的一部分,当浏览器向web服务器发送请求的时候,一般会带上Referer,告诉服务器我是从哪个页面链接过来的,服务器基此可以获得一些信息用于处理。
页面URL,Uniform Resource Locators的缩写,为“统一资源定位器”。它不仅可用来定位网络上信息资源的地址,也可用来定位本地系统要访问的文件。
实施例一
参照图1,示出了本发明的一种页面显示方法实施例的步骤流程图,该方法应用于客户端,具体可以包括如下步骤:
步骤101,发送针对目标页面的第一访问请求至服务器;
本发明实施例中,在客户端用户通过浏览器访问网页时,是经过以下几个步骤实现的:
首先,客户端浏览器根据IP(互联网协议,Internet protocol)地址发起HTTP(Hyper Text Transfer Protocol,超文本传输协议)三次握手协议,以建立TCP/IP连接;
其次,浏览器想服务器发送HTTP请求;服务器端接受到了这个请求,根据路径参数,经过后端的一些处理之后,把处理后的结果数据返回给浏览器,比如页面完整的html代码等返回给浏览器。
再次,浏览器拿到了完整的html代码后,在解析和渲染这个页面的时候,里面的JS,CSS图片静态资源,他们同样也是一个个http请求。
最后,浏览器根据拿到的资源对页面进行渲染,最终把一个完整的页面呈现给了用户。
通过上述描述,如图2A所示,即用户在得到目标网络的IP地址后,向服务器发送页面请求,即HTTP请求。
步骤102,接收服务器返回的针对所述访问请求的超文本标记语言html;
其中,如图2A所示,在服务器接收到客户端发送的页面请求,即请求静态资源,向客户端返回完整的html代码。
具体地,上述服务器通常是CDN服务器,或称为网络缓存服务器,但是针对具体应用可以进行适应性调整,本发明实施例服务器的具体类型不加以限制。
步骤103,在浏览器渲染所述超文本标记语言html时,静态资源请求失败,则在浏览器缓存cookie中添加降级标识;
其中,浏览器对客户端接收到的完整的html代码进行渲染,如果渲染失败,则获取浏览器cookie,并在其中添加降级标识。
优选地,所述步骤103,进一步包括:
子步骤1031,在浏览器渲染所述超文本标记语言html时,获取浏览器缓存cookie;
其中,浏览器中的cookie机制,如果不在浏览器中设置过期时间,cookie被保存在内存中,生命周期随浏览器的关闭而结束,这种cookie简称会话cookie。如果在浏览器中设置了cookie的过期时间,cookie被保存在硬盘中,关闭浏览器后,cookie数据仍然存在,直到过期时间结束才消失。Cookie是服务器发给客户端的特殊信息,cookie是以文本的方式保存在客户端,每次请求时都带上它。所以在浏览器渲染html代码时,获取针对当前页面的cookie。
子步骤1032,获取所述浏览器缓存cookie中的临时标签页数据sessionStorage;
其中,浏览器中的session机制是,session是一次浏览器和服务器的交互的会话,第一次访问时,服务器会创建一个新的sesion,并且把session的Id以cookie的形式发送给客户端浏览器,session信息存在于服务器端。sessionStorage,用于临时保存同一窗口(或标签页)的数据,在关闭窗口或标签页之后将会删除这些数据
子步骤1033,如果所述临时标签页数据sessionStorage存在错误信息,则浏览器渲染所述超文本标记语言html时,静态资源请求失败;
其中,如果监测到sessionStorage存在错误信息,则确定浏览器渲染所述超文本标记语言html的过程中,对于针对超文本标记语言html的静态资源请求失败,进一步询问用户是否需要降级处理。
具体的,在客户端当前页面html中添加脚本,监听页面加载事件,当页面加载完成后,检测sessionStorage里是否存在错误信息,如果有则可以通过相关上报工具进行数据上报。
子步骤1034,在浏览器缓存cookie中添加预设值为降级标识。
具体的,根据上述描述,若检测sessionStorage中存在错误信息,则在浏览器缓存cookie中添加预设键值key为降级标识。
优选地,在本发明另一实施例中,步骤103,进一步包括:
子步骤1035,监测到浏览器中所述窗口对象上的错误事件,则浏览器渲染所述超文本标记语言html时,静态资源请求失败;
其中,还可以通过在客户端当前页面html中添加脚本,监听全局错误,使用事件捕获的方式,监听window对象上的错误。
当然,要保证该script前置以便于及早进行错误捕获。
其中,window是浏览器里的一个顶层对象,事件监听可以选择使用事件捕获还是事件冒泡,要监听全局发生的资源加载错误的话,就需要使用事件捕获才行,在监听到对象的错误error事件,则根据error的参数判断是否是资源加载错误,如果错误则确定浏览器渲染超文本标记语言html的过程中,对于针对超文本标记语言html的静态资源请求失败。
子步骤1036,在浏览器缓存cookie中添加预设值为降级标识。
优选地,所述子步骤1036,进一步包括:
子步骤10361,将所述临时标签页数据sessionStorage存在错误信息,和/或,所述窗口对象上的错误事件,存储在所述临时标签页数据sessionStorage中,生成错误资源信息;
其中,对于上述错误信息,即sessionStorage存在错误信息,和/或,所述窗口对象上的错误事件,存储到sessionStorage中,作为错误资源信息。
子步骤10362,根据所述错误资源信息,生成提示页面;所述提示页面包括提示用户向服务器的重新发送页面请求的提示信息;
其中,根据上述错误资源信息使用javascript动态生成按钮,添加到页面内,提示用户当前资源加载失败,是否使用其他通道,并监听该按钮的点击click事件。
当然,提示页面也可以是窗口形式,本发明实施例对提示页面的显示方式不加以限制。
子步骤10363,接收到对所述提示信息的确定操作,在浏览器缓存cookie中添加预设值为降级标识。
其中,根据上述生成的动态按钮,触发事件监听器,监听到用户点击按钮,则设置cookie预设值作为降级标识,在sessionStorage里面添加用户点击行为记录,并添加预设值为降级标识。
步骤104,根据所述降级标识生成针对所述目标页面的第二访问请求,并发送至所述服务器;
其中,将上述降级标识添加到根据目标页面生成的访问请求中,作为第二访问请求,并发送至所述服务器。
步骤105,接收所述服务器返回的备用静态资源;
其中,接收到服务器根据第二访问请求返回的备用静态资源。
步骤106,根据所述备用静态资源,重新渲染所述超文本标记语言html,并展示所述目标页面。
其中,在浏览器渲染备用静态资源,得到用户请求访问的目标页面。
以实例描述实施例一中的在客户端的页面降级处理方法如下:
首先,客户端从服务器获取到返回的页面html数据后,浏览器执行正常的页面渲染流程。当渲染过程中需要请求静态资源时,客户端通过cookie检测是否需要进行降级处理
a.需要进行降级处理:前端使用备用服务器替换所请求资源路径
b.不需要进行降级处理:前端执行正常渲染流程
i.资源请求成功:页面正常渲染
ii.资源请求失败:触发上面1-c所添加的事件监听器,执行以下行为:
1.判断报错对象是否为脚本或css(Cascading Style Sheets,层叠样式表)
a.不是则不执行任何操作
b.是则执行以下操作
i.将报错对象的相关信息(页面referer、页面url、资源路径)存储到sessionStorage
ii.使用javascript动态生成按钮,添加到页面内,提示用户当前资源加载失败,是否使用其他通道,并监听该按钮的点击click事件
1.用户点击按钮,触发事件监听器,执行以下操作
a.设置cookie降级标识
b.在sessionStorage里面添加用户点击行为记录
c.重新加载页面。
其中,在请求文档的时候cookie会自动发送,因此在服务端渲染的时候可以根据cookie来判断是否需要做降级处理。另外,CDN的不稳定性通常是具有时间性的,而Cookie可以通过设置超时时间来进行自动删除,从而避免一次降级之后无法再使用CDN进行访问的问题。
另外,当资源加载失败后,由于可能存在上报工具也未能加载的情况,不能够立即上报错误,需要先将此次错误存储到sessionStorage里面,不使用localStorage(webstorage特性的API之一,用于将大量数据(最大5M)保存在浏览器中,保存后数据永远存在不会失效过期,除非手动清除)的原因sessionStorage的生命周期只在当次会话内,无需自己另外进行删除操作。在用户切换通道,资源顺利加载后,再进行错误上报。
在本发明实施例中,通过在客户端发送针对目标页面的第一访问请求至服务器;接收服务器返回的针对所述访问请求的超文本标记语言html;在浏览器渲染所述超文本标记语言html时,静态资源请求失败,则在浏览器缓存cookie中添加降级标识;根据所述降级标识生成针对所述目标页面的第二访问请求,并发送至所述服务器;接收所述服务器返回的备用静态资源;根据所述备用静态资源,重新渲染所述超文本标记语言html,并展示所述目标页面。具备在发现html加载失败后,通过在cookie中添加降级标识,并再次发起请求以获取备用静态数据,及时有效保证服务可用的有益效果。
实施例二
参照图2,示出了本发明的一种页面显示方法实施例的步骤流程图,该方法应用于客户端,具体可以包括如下步骤:
步骤201,响应于客户端发送的针对目标页面的访问请求,获取所述访问请求中的降级标识;
步骤202,所述降级标识符合预设值,则将所述访问请求转发至备用服务器,获取所述目标页面的备用静态资源;
本发明实施例中,如图2A所示,当服务器接收到用户向服务器请求页面时,服务器获取请求头所携带的Cookie中是否具备降级标识,如果降级标识符合预设值,如果需要降级,则使用降级方案。
其中,降级方案包括从CDN服务器请求静态资源从备用服务器迁移到当前服务器,对HTML的请求是并不发送变化。
步骤203,将所述目标页面的备用静态资源发送至所述客户端。
其中,降级方案为向备用服务器获取备用静态资源数据,即备用静态资源,也可以描述为用备用域名渲染前端资源路径,生成html发送到客户端。
优选地,还包括:
步骤204,所述降级标识不符合预设值,则发送所述目标页面的超文本标记语言html至所述客户端。
其中,如果所述降级标识不符合预设值,则表明当前网页请求的静态数据不需要降级,可以使用服务器或(CDN网络缓存服务器)域名渲染前端资源路径,生成html发送到客户端。
在本发明实施例中,响应于客户端发送的针对目标页面的访问请求,获取所述访问请求中的降级标识;所述降级标识符合预设值,则将所述访问请求转发至备用服务器,获取所述目标页面的备用静态资源;将所述目标页面的备用静态资源发送至所述客户端。实现了在服务端通过判断cookie里是否包含相应预设值key的方法来判断是否需要降级,如果需要降级,则将自身伺服的资源路径替换为备用路径。具备有效服务可用的有益效果。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
实施例三
参照图3,示出了本发明的一种页面显示装置实施例的结构框图,该装置应用于客户端,具体可以包括如下模块:
第一访问请求发送模块301,用于发送针对目标页面的第一访问请求至服务器;
超文本标记语言接收模块302,用于接收服务器返回的针对所述访问请求的超文本标记语言html;
降级标识添加模块303,用于在浏览器渲染所述超文本标记语言html时,静态资源请求失败,则在浏览器缓存cookie中添加降级标识;
优选地,所述降级标识添加模块303,进一步包括:
浏览器缓存获取子模块,用于在浏览器渲染所述超文本标记语言html时,获取浏览器缓存cookie;
临时标签页数据获取子模块,用于获取所述浏览器缓存cookie中的临时标签页数据sessionStorage;
错误信息监测子模块,用于如果所述临时标签页数据sessionStorage存在错误信息,则浏览器渲染所述超文本标记语言html时,静态资源请求失败;
降级标识添加子模块,用于在浏览器缓存cookie中添加预设值为降级标识。
优选地,在本发明另一实施例中,所述降级标识添加模块303,还进一步包括:
错误事件监测子模块,用于监测到浏览器中所述窗口对象上的错误事件,则浏览器渲染所述超文本标记语言html时,静态资源请求失败;
降级标识添加子模块,用于在浏览器缓存cookie中添加预设值为降级标识。
优选地,所述降级标识添加子模块,进一步包括:
错误资源信息生成单元,用于将所述临时标签页数据sessionStorage存在错误信息,和/或,所述窗口对象上的错误事件,存储在所述临时标签页数据sessionStorage中,生成错误资源信息;
提示页面生成单元,用于根据所述错误资源信息,生成提示页面;所述提示页面包括提示用户向服务器的重新发送页面请求的提示信息;
降级标识添加单元,用于接收到对所述提示信息的确定操作,在浏览器缓存cookie中添加预设值为降级标识。
第二访问请求发送模块304,用于根据所述降级标识生成针对所述目标页面的第二访问请求,并发送至所述服务器;
优选地,所述第二访问请求发送模块304,进一步包括:
备用超文本标记语言接收模块305,用于接收所述服务器返回的备用静态资源;
目标页面生成模块306,用于根据所述备用静态资源,重新渲染所述超文本标记语言html,并展示所述目标页面。
在本发明实施例中,通过在客户端的第一访问请求发送模块,用于发送针对目标页面的第一访问请求至服务器;超文本标记语言接收模块,用于接收服务器返回的针对所述访问请求的超文本标记语言html;降级标识添加模块,用于在浏览器渲染所述超文本标记语言html时,静态资源请求失败,则在浏览器缓存cookie中添加降级标识;第二访问请求发送模块,用于根据所述降级标识生成针对所述目标页面的第二访问请求,并发送至所述服务器;备用超文本标记语言接收模块,用于接收所述服务器返回的备用静态资源;目标页面生成模块,用于根据所述备用静态资源,重新渲染所述超文本标记语言html,并展示所述目标页面。具备在发现html失败后,通过在cookie中添加降级标识,并再次发起请求以获取备用静态数据,及时有效保证服务可用的有益效果。
实施例四
参照图4,示出了本发明的一种页面显示装置实施例的结构框图,该装置应用于服务器,具体可以包括如下模块:
降级标识获取模块401,用于响应于客户端发送的针对目标页面的访问请求,获取所述访问请求中的降级标识;
备用静态资源获取模块402,用于所述降级标识符合预设值,则将所述访问请求转发至备用服务器,获取所述目标页面的备用静态资源;
备用超文本标记语言发送模块403,用于将所述目标页面的备用静态资源发送至所述客户端。
优选地,还包括:
超文本标记语言发送模块,用于所述降级标识不符合预设值,则发送所述目标页面的超文本标记语言html至所述客户端。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本发明实施例还提供一种设备,包括:处理器、存储器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如上述的一个或多个所述的页面显示方法。
本发明实施例还提供一种可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如所述的页面显示方法。
综上所述,在本发明实施例中,通过在服务器的降级标识获取模块,用于响应于客户端发送的针对目标页面的访问请求,获取所述访问请求中的降级标识;备用静态资源获取模块,用于所述降级标识符合预设值,则将所述访问请求转发至备用服务器,获取所述目标页面的备用静态资源;备用超文本标记语言发送模块,用于将所述目标页面的备用静态资源发送至所述客户端。具备有效服务可用的有益效果。其具有如下优点:
一.本申请方案不受技术栈限制,通用性高,客户端渲染、服务端渲染均可使用本方案;
二.有效保障了服务的稳定运行。在前端应用趋向于单页面化的今天,前端应用对于javascript(直译式脚本语言)的依赖性越来越强,因此使用本降级方案能够保证在CDN发生故障时能够降级处理,以保证服务的正常运行;
三.提供一个完善的降级处理流程,同时具备错误收集能力,以便于开发者将收集到的错误信息进行上报汇总,及时发现并分析问题。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种页面显示方法、装置、设备及可读存储介质,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (9)
1.一种页面显示方法,应用于客户端,其特征在于,包括:
发送针对目标页面的第一访问请求至服务器;
接收服务器返回的针对所述访问请求的超文本标记语言html;
在浏览器渲染所述超文本标记语言html时,基于所述服务器的内容分发网络的静态资源请求失败,则在浏览器缓存cookie中添加降级标识;
根据所述降级标识生成针对所述目标页面的第二访问请求,并发送至所述服务器;
接收所述服务器返回的备用静态资源,所述备用静态资源由备用服务器提供给所述服务器;
根据所述备用静态资源,重新渲染所述超文本标记语言html,并展示所述目标页面;
其中,在过期时间时候或生命周期之后,删除所述浏览器缓存cookie,以基于所述服务器的内容分发网络获取超文本标记语言html对应的静态资源。
2.根据权利要求1所述的方法,其特征在于,所述在浏览器渲染所述超文本标记语言html时,基于所述服务器的内容分发网络的静态资源请求失败,则在浏览器缓存cookie中添加降级标识,包括:
在浏览器渲染所述超文本标记语言html时,获取浏览器缓存cookie;
获取所述浏览器缓存cookie中的临时标签页数据sessionStorage;
如果所述临时标签页数据sessionStorage存在错误信息,则浏览器渲染所述超文本标记语言html时,静态资源请求失败;
在浏览器缓存cookie中添加预设值为降级标识。
3.根据权利要求1所述的方法,其特征在于,所述在浏览器渲染所述超文本标记语言html时,基于所述服务器的内容分发网络的静态资源请求失败,则在浏览器缓存cookie中添加降级标识,包括:
监测到浏览器中窗口对象上的错误事件,则浏览器渲染所述超文本标记语言html时,静态资源请求失败;
在浏览器缓存cookie中添加预设值为降级标识。
4.根据权利要求2或3所述的方法,其特征在于,所述在浏览器缓存cookie中添加预设值为降级标识,包括:
将临时标签页数据sessionStorage存在错误信息,和/或,窗口对象上的错误事件,存储在所述临时标签页数据sessionStorage中,生成错误资源信息;
根据所述错误资源信息,生成提示页面;所述提示页面包括提示用户向服务器的重新发送页面请求的提示信息;
接收到对所述提示信息的确定操作,在浏览器缓存cookie中添加预设值为降级标识。
5.一种页面显示方法,应用于服务器,其特征在于,包括:
响应于客户端发送的针对目标页面的访问请求,获取所述访问请求中的降级标识;
所述降级标识符合预设值,则将所述访问请求转发至备用服务器,获取所述目标页面的备用静态资源;
将所述目标页面的备用静态资源发送至所述客户端;
其中,所述降级标识不符合预设值,则基于内容分发网络向所述客户端发送超文本标记语言html对应的静态资源。
6.一种页面显示装置,应用于客户端,其特征在于,包括:
第一访问请求发送模块,用于发送针对目标页面的第一访问请求至服务器;
超文本标记语言接收模块,用于接收服务器返回的针对所述访问请求的超文本标记语言html;
降级标识添加模块,用于在浏览器渲染所述超文本标记语言html时,基于所述服务器的内容分发网络的静态资源请求失败,则在浏览器缓存cookie中添加降级标识;
第二访问请求发送模块,用于根据所述降级标识生成针对所述目标页面的第二访问请求,并发送至所述服务器;
备用超文本标记语言接收模块,用于接收所述服务器返回的备用静态资源,所述备用静态资源由备用服务器提供给所述服务器;
目标页面生成模块,用于根据所述备用静态资源,重新渲染所述超文本标记语言html,并展示所述目标页面;
其中,在过期时间时候或生命周期之后,删除所述浏览器缓存cookie,以基于所述服务器的内容分发网络获取超文本标记语言html对应的静态资源。
7.一种页面显示装置,应用于服务器,其特征在于,包括:
降级标识获取模块,用于响应于客户端发送的针对目标页面的访问请求,获取所述访问请求中的降级标识;
备用静态资源获取模块,用于所述降级标识符合预设值,则将所述访问请求转发至备用服务器,获取所述目标页面的备用静态资源;
备用超文本标记语言发送模块,用于将所述目标页面的备用静态资源发送至所述客户端;
其中,所述降级标识不符合预设值,则基于内容分发网络向所述客户端发送超文本标记语言html对应的静态资源。
8.一种设备,其特征在于,包括:
处理器、存储器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-5之任一项所述的页面显示方法。
9.一种可读存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够实现如权利要求1-5之任一项所述的页面显示方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910239741.8A CN110096659B (zh) | 2019-03-27 | 2019-03-27 | 一种页面显示方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910239741.8A CN110096659B (zh) | 2019-03-27 | 2019-03-27 | 一种页面显示方法、装置、设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110096659A CN110096659A (zh) | 2019-08-06 |
CN110096659B true CN110096659B (zh) | 2021-08-20 |
Family
ID=67444037
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910239741.8A Active CN110096659B (zh) | 2019-03-27 | 2019-03-27 | 一种页面显示方法、装置、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110096659B (zh) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110795195B (zh) * | 2019-10-31 | 2023-09-26 | 百度在线网络技术(北京)有限公司 | 一种网页渲染方法、装置、电子设备及存储介质 |
CN110781089B (zh) * | 2019-10-31 | 2022-08-19 | 睿云联(厦门)网络通讯技术有限公司 | 一种设备ui自动化测试方法、装置、电子设备和介质 |
CN110889073B (zh) * | 2019-11-21 | 2024-01-12 | 掌阅科技股份有限公司 | 页面请求的响应方法、服务器及计算机存储介质 |
CN111046310B (zh) * | 2019-12-12 | 2024-03-19 | 北京奇艺世纪科技有限公司 | 页面处理方法、装置、服务器及计算机可读存储介质 |
CN111274308A (zh) * | 2020-01-17 | 2020-06-12 | 杭州安恒信息技术股份有限公司 | 一种节点关系图的显示方法、装置及设备 |
CN111506387B (zh) * | 2020-03-02 | 2023-09-22 | 百度在线网络技术(北京)有限公司 | 页面预渲染方法、装置、电子设备及存储介质 |
CN113515328B (zh) * | 2020-04-09 | 2024-10-18 | 北京沃东天骏信息技术有限公司 | 页面渲染的方法、装置、电子设备和存储介质 |
CN111611513B (zh) * | 2020-04-11 | 2023-11-14 | 上海淇玥信息技术有限公司 | 一种基于用户身份信息的页面展示方法、装置和电子设备 |
CN111552900B (zh) * | 2020-04-30 | 2023-11-21 | 北京大米科技有限公司 | 访问控制方法、装置、可读存储介质和电子设备 |
CN111737615B (zh) * | 2020-05-14 | 2024-08-20 | 阿波罗智联(北京)科技有限公司 | 获取页面资源的方法、装置、电子设备以及可读存储介质 |
CN111737617B (zh) * | 2020-06-15 | 2024-05-07 | 北京达佳互联信息技术有限公司 | 页面资源的加载方法、装置、电子设备及存储介质 |
CN111859236B (zh) * | 2020-06-19 | 2022-07-08 | 苏州浪潮智能科技有限公司 | 一种基于动态表单校验的服务器渲染页面生成方法与系统 |
CN111783004B (zh) * | 2020-07-06 | 2024-08-16 | 上海乾臻信息科技有限公司 | 页面嵌入方法、装置及系统 |
CN112202631A (zh) * | 2020-09-17 | 2021-01-08 | 北京金山云网络技术有限公司 | 一种资源访问方法、装置、系统、电子设备及存储介质 |
CN112464129A (zh) * | 2020-11-09 | 2021-03-09 | 广东华兴银行股份有限公司 | 一种加载h5页面请求的安全通讯方法、设备及介质 |
CN112379950B (zh) * | 2020-11-17 | 2024-08-27 | 北京金山云网络技术有限公司 | 页面调用方法、装置及服务器 |
CN112437148B (zh) * | 2020-11-20 | 2023-03-07 | 北京奇艺世纪科技有限公司 | 业务请求的处理方法、装置、业务服务器及系统 |
CN112966200A (zh) * | 2021-03-04 | 2021-06-15 | 北京百度网讯科技有限公司 | 一种服务降级方法和渲染服务器 |
CN113315982B (zh) * | 2021-05-07 | 2023-06-27 | 广州虎牙科技有限公司 | 一种直播方法、计算机存储介质及设备 |
CN113420245B (zh) * | 2021-05-11 | 2023-10-27 | 上海幻电信息科技有限公司 | 页面显示方法及系统 |
CN113220273B (zh) * | 2021-05-20 | 2024-06-04 | 南方电网数字电网研究院有限公司 | 微前端应用资源处理方法、装置、设备和介质 |
CN113392349A (zh) * | 2021-06-11 | 2021-09-14 | 北京沃东天骏信息技术有限公司 | 一种页面加载方法、装置、设备和计算机可读存储介质 |
CN113472888B (zh) * | 2021-07-07 | 2024-01-05 | 挂号网(杭州)科技有限公司 | 网页访问方法、装置、服务器设备及存储介质 |
CN113806670A (zh) * | 2021-10-11 | 2021-12-17 | 中国银行股份有限公司 | 超文本标记语言数据的处理方法及相关装置、存储介质 |
CN114138397B (zh) * | 2021-12-10 | 2024-06-07 | 北京百度网讯科技有限公司 | 页面显示方法、装置、电子设备及存储介质 |
CN115348352A (zh) * | 2022-07-19 | 2022-11-15 | 钉钉(中国)信息技术有限公司 | 一种页面访问方法及系统 |
CN116150542B (zh) * | 2023-04-21 | 2023-07-14 | 河北网新数字技术股份有限公司 | 一种动态页面的生成方法和装置及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106156231A (zh) * | 2015-04-24 | 2016-11-23 | 阿里巴巴集团控股有限公司 | 一种网站容灾方法、装置及系统 |
CN106919478A (zh) * | 2017-03-07 | 2017-07-04 | 中国建设银行股份有限公司 | 一种网站页面元素备份方法和系统 |
CN107832329A (zh) * | 2017-09-26 | 2018-03-23 | 中国平安人寿保险股份有限公司 | 页面资源获取方法及终端设备 |
CN107992557A (zh) * | 2017-11-28 | 2018-05-04 | 平安养老保险股份有限公司 | 静态资源更新方法、装置、存储介质和计算机设备 |
CN108156013A (zh) * | 2016-12-02 | 2018-06-12 | 阿里巴巴集团控股有限公司 | 一种页面服务容灾方法、装置及电子设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101770634A (zh) * | 2009-12-28 | 2010-07-07 | 广东威创视讯科技股份有限公司 | 一种超高分辨率的gis系统及其实现方法 |
CN103024933B (zh) * | 2011-09-28 | 2016-01-20 | 腾讯科技(深圳)有限公司 | 一种移动互联网访问系统及访问移动互联网的方法 |
CN103491117A (zh) * | 2012-06-12 | 2014-01-01 | 闪亮科技有限公司 | 智能媒体实现方法及系统 |
CN108153663B (zh) * | 2016-12-02 | 2022-02-18 | 阿里巴巴集团控股有限公司 | 页面数据处理方法及装置 |
-
2019
- 2019-03-27 CN CN201910239741.8A patent/CN110096659B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106156231A (zh) * | 2015-04-24 | 2016-11-23 | 阿里巴巴集团控股有限公司 | 一种网站容灾方法、装置及系统 |
CN108156013A (zh) * | 2016-12-02 | 2018-06-12 | 阿里巴巴集团控股有限公司 | 一种页面服务容灾方法、装置及电子设备 |
CN106919478A (zh) * | 2017-03-07 | 2017-07-04 | 中国建设银行股份有限公司 | 一种网站页面元素备份方法和系统 |
CN107832329A (zh) * | 2017-09-26 | 2018-03-23 | 中国平安人寿保险股份有限公司 | 页面资源获取方法及终端设备 |
CN107992557A (zh) * | 2017-11-28 | 2018-05-04 | 平安养老保险股份有限公司 | 静态资源更新方法、装置、存储介质和计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
CN110096659A (zh) | 2019-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110096659B (zh) | 一种页面显示方法、装置、设备及可读存储介质 | |
US9483572B2 (en) | Interactivity analyses of web resources based on reload events | |
US8825849B2 (en) | Distributed data collection and aggregation | |
US8301748B2 (en) | Managing CDN registration by a storage provider | |
US8856325B2 (en) | Network element failure detection | |
CN106126693B (zh) | 一种网页的相关数据的发送方法及装置 | |
CN105743945B (zh) | 基于切换下载源的文件下载方法及系统 | |
CN106161669A (zh) | 一种快速域名解析方法和系统、及其终端和服务器 | |
US20160226730A1 (en) | A Method And System For Determining Page Impression In A Client-Server System | |
CN110851753A (zh) | 一种网站的访问方法、装置、设备及存储介质 | |
US9654575B1 (en) | Pass-through web traffic systems and methods | |
CN112256495A (zh) | 数据传输方法、装置、计算机设备及存储介质 | |
US11064052B2 (en) | Page insertion method and device | |
CN102938716A (zh) | 内容分发网络加速测试方法和装置 | |
CN110933193B (zh) | 域名解析方法、装置、电子设备及计算机可读存储介质 | |
CN112104703A (zh) | cookie管理方法、中间节点及webvpn系统 | |
CA3006514C (en) | Accelerating connections to a host server | |
KR101650829B1 (ko) | 대상을 획득하는 방법, 장치, 및 시스템 | |
CN109788083B (zh) | 应用下载方法、装置、存储介质及电子装置 | |
USRE50106E1 (en) | Pre-fetching random-value resource locators | |
CN111737629B (zh) | 一种数据探测方法及装置 | |
CN108073627B (zh) | 一种跨域网页的JavaScript函数调用方法以及装置 | |
WO2002096063A2 (en) | Requests in a communication system | |
CN104869182A (zh) | 一种域名解析的方法和装置 | |
CN116938570B (zh) | 一种检测方法、装置、存储介质及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |