CN114817816A - 页面加载的方法、装置、存储介质以及电子设备 - Google Patents
页面加载的方法、装置、存储介质以及电子设备 Download PDFInfo
- Publication number
- CN114817816A CN114817816A CN202210556064.4A CN202210556064A CN114817816A CN 114817816 A CN114817816 A CN 114817816A CN 202210556064 A CN202210556064 A CN 202210556064A CN 114817816 A CN114817816 A CN 114817816A
- Authority
- CN
- China
- Prior art keywords
- page
- rendering
- historical
- target
- target 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
- 238000011068 loading method Methods 0.000 title claims abstract description 58
- 238000009877 rendering Methods 0.000 claims abstract description 257
- 238000000034 method Methods 0.000 claims abstract description 43
- 238000004590 computer program Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 14
- 238000004891 communication Methods 0.000 description 7
- 230000004044 response Effects 0.000 description 6
- 230000005236 sound signal Effects 0.000 description 4
- 238000001914 filtration Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000009191 jumping Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
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/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
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 Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种页面加载的方法、装置、存储介质以及电子设备,涉及计算机技术领域,该方法包括:响应于对目标页面的渲染请求,获取预先存储的一个或多个历史页面对应的历史页面渲染文件;在一个或多个历史页面对应的历史页面渲染文件中不存在该目标页面对应的第一页面渲染文件的情况下,向该目标页面对应的服务器获取该目标页面的页面数据;根据该页面数据进行虚拟渲染,以得到该第一页面渲染文件;根据该第一页面渲染文件,加载该目标页面。
Description
技术领域
本发明涉及计算机技术领域,具体地,涉及一种页面加载的方法、装置、存储介质以及电子设备。
背景技术
在实际应用场景中,常常会出现从当前页面跳转后再次返回该页面的情况,而页面发生跳转后,页面中的页面组件将会被销毁。若再次返回该页面则需要通过浏览器渲染机制在浏览器中重新对页面进行渲染,导致页面加载时间过长,影响了用户的使用体验。
发明内容
为了解决上述技术问题,本发明提供一种页面加载的方法、装置、存储介质以及电子设备。
根据本发明的第一方面,提供了一种页面加载的方法,所述方法包括:
响应于对目标页面的渲染请求,获取预先存储的一个或多个历史页面对应的历史页面渲染文件;
在所述一个或多个历史页面对应的历史页面渲染文件中不存在所述目标页面对应的第一页面渲染文件的情况下,向所述目标页面对应的服务器获取所述目标页面的页面数据;
根据所述页面数据进行虚拟渲染,以得到所述第一页面渲染文件;
根据所述第一页面渲染文件,加载所述目标页面。
可选地,所述方法还包括:在所述一个或多个历史页面对应的历史页面渲染文件中存在所述目标页面对应的第一页面渲染文件的情况下,从预先存储的所述一个或多个历史页面对应的历史页面渲染文件中,确定所述目标页面对应的第二页面渲染文件;其中,所述历史页面渲染文件中包括用于记录所述历史页面中各个页面元素的第一渲染节点;
根据所述第二页面渲染文件,加载所述目标页面。
可选地,所述根据所述页面数据进行虚拟渲染,以得到所述第一页面渲染文件包括:
根据所述页面数据,在存储空间中进行虚拟渲染,得到所述目标页面中各个页面元素对应的第二渲染节点;
根据所述第二渲染节点,得到所述第一页面渲染文件。
可选地,所述方法还包括:获取所述目标页面的第一页面标识信息;
根据所述第一页面标识信息,将所述第一页面渲染文件作为所述历史页面对应的历史页面渲染文件进行存储。
可选地,所述方法还包括:响应于对所述目标页面的页面跳转请求,获取当前所述目标页面中的目标页面元素;
根据所述目标页面元素,对所述第一页面渲染文件进行更新。
可选地,所述获取所述目标页面的第一页面标识信息包括:
获取所述目标页面的页面地址信息;
根据所述页面地址信息,生成所述目标页面的键值;
根据所述键值和所述第一页面渲染文件,得到所述第一页面标识信息。
可选地,所述方法还包括:获取所述目标页面的第一页面标识信息;
所述一个或多个历史页面对应的历史页面渲染文件中不存在所述目标页面对应的第一页面渲染文件通过以下方式确定:
在所述一个或多个历史页面对应的第二页面标识信息中不包含所述第一页面标识信息的情况下,确定所述一个或多个历史页面对应的历史页面渲染文件中不存在所述目标页面对应的第一页面渲染文件。
可选地,所述方法还包括:在存储的所述一个或多个历史页面对应的历史页面渲染文件的存储时间达到预设存储时间阈值的情况下,删除任一或多个所述历史页面对应的历史页面渲染文件;或者,
在用户触发存储重置请求后,删除任一或多个所述历史页面对应的历史页面渲染文件。
根据本发明的第二方面,提供了一种页面加载的装置,所述装置包括:
第一获取模块,用于响应于对目标页面的渲染请求,获取预先存储的一个或多个历史页面对应的历史页面渲染文件;
第二获取模块,用于在所述一个或多个历史页面对应的历史页面渲染文件中不存在所述目标页面对应的第一页面渲染文件的情况下,向所述目标页面对应的服务器获取所述目标页面的页面数据;
渲染模块,用于根据所述页面数据进行虚拟渲染,以得到所述第一页面渲染文件;
第一加载模块,用于根据所述第一页面渲染文件,加载所述目标页面。
可选地,所述装置还包括:
确定模块,用于在所述一个或多个历史页面对应的历史页面渲染文件中存在所述目标页面对应的第一页面渲染文件的情况下,从预先存储的所述一个或多个历史页面对应的历史页面渲染文件中,确定所述目标页面对应的第二页面渲染文件;其中,所述历史页面渲染文件中包括用于记录所述历史页面中各个页面元素的第一渲染节点;
第二加载模块,用于根据所述第二页面渲染文件,加载所述目标页面。
可选地,所述渲染模块,用于根据所述页面数据,在存储空间中进行虚拟渲染,得到所述目标页面中各个页面元素对应的第二渲染节点;根据所述第二渲染节点,得到所述第一页面渲染文件。
可选地,所述装置还包括:
第三获取模块,用于获取所述目标页面的第一页面标识信息;
存储模块,用于根据所述第一页面标识信息,将所述第一页面渲染文件作为所述历史页面对应的历史页面渲染文件进行存储。
可选地,所述装置还包括:
第四获取模块,用于响应于对所述目标页面的页面跳转请求,获取当前所述目标页面中的目标页面元素;
更新模块,用于根据所述目标页面元素,对所述第一页面渲染文件进行更新。
可选地,所述第三获取模块,用于获取所述目标页面的页面地址信息;根据所述页面地址信息,生成所述目标页面的键值;根据所述键值和所述第一页面渲染文件,得到所述第一页面标识信息。
可选地,所述第三获取模块,用于获取所述目标页面的第一页面标识信息;
所述第二获取模块,用于在所述一个或多个历史页面对应的第二页面标识信息中不包含所述第一页面标识信息的情况下,确定所述一个或多个历史页面对应的历史页面渲染文件中不存在所述目标页面对应的第一页面渲染文件。
可选地,所述装置还包括:删除模块,用于在存储的所述一个或多个历史页面对应的历史页面渲染文件的存储时间达到预设存储时间阈值的情况下,删除任一或多个所述历史页面对应的历史页面渲染文件;或者,在用户触发存储重置请求后,删除任一或多个所述历史页面对应的历史页面渲染文件。
根据本发明的第三方面,提供了一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明第一方面所述方法的步骤。
根据本发明的第四方面,提供了一种电子设备,包括:存储器,其上存储有计算机程序;处理器,用于执行所述存储器中的所述计算机程序,以实现本发明第一方面所述方法的步骤。
通过上述技术方案,首先,响应于对目标页面的渲染请求,获取预先存储的一个或多个历史页面对应的历史页面渲染文件;其次,在一个或多个历史页面对应的历史页面渲染文件中不存在目标页面对应的第一页面渲染文件的情况下,向目标页面对应的服务器获取目标页面的页面数据;之后,根据页面数据进行虚拟渲染,以得到第一页面渲染文件;最后,根据该第一页面渲染文件,加载该目标页面。通过上述技术方案,在一个或多个历史页面对应的历史页面渲染文件中不存在目标页面对应的第一页面渲染文件的情况下,也即该目标页面是首次进行渲染的情况下,先通过页面数据进行虚拟渲染,以得到渲染后的第一页面渲染文件,再根据第一页面渲染文件加载目标页面。也就是说,本发明不是直接在浏览器中对目标页面进行渲染的,而是先将页面数据虚拟渲染至第一页面渲染文件中,再根据第一页面渲染文件加载目标页面。这样,当用户再次访问该目标页面时,可以根据该第一页面渲染文件加载目标页面,无需对目标页面重新进行渲染,提高了页面加载的速度,提升了用户的使用体验。
本发明的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。在附图中:
图1是根据一示例性实施例示出的一种页面加载的方法的流程图;
图2是根据一示例性实施例示出的另一种页面加载的方法的流程图;
图3是根据一示例性实施例示出的另一种页面加载的方法的流程图;
图4是根据一示例性实施例示出的另一种页面加载的方法的流程图;
图5是根据一示例性实施例示出的另一种页面加载的方法的流程图;
图6是根据一示例性实施例示出的另一种页面加载的方法的流程图;
图7是根据一示例性实施例示出的一种页面加载的装置的结构图;
图8是根据一示例性实施例示出的另一种页面加载的装置的结构图;
图9是根据一示例性实施例示出的另一种页面加载的装置的结构图;
图10是根据一示例性实施例示出的另一种页面加载的装置的结构图;
图11是根据一示例性实施例示出的另一种页面加载的装置的结构图;
图12是根据一示例性实施例示出的一种电子设备的结构图。
具体实施方式
以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
需要说明的是,本发明中所有获取信号、信息或数据的动作都是在遵照所在地国家相应的数据保护法规政策的前提下,并获得由相应装置所有者给予授权的情况下进行的。
在下文中的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
如背景技术所言,若再次返回该页面需要通过浏览器渲染机制在浏览器中重新对页面进行渲染,而通过浏览器对页面进行渲染后,渲染后的数据将不会被保存下来,也就是说,用户每次进入该页面时,都会对该页面进行重新渲染。
鉴于此,本发明提供一种页面加载的方法、装置、存储介质以及电子设备,先将页面数据虚拟渲染至第一页面渲染文件中,再根据第一页面渲染文件加载目标页面。这样,当用户再次访问该目标页面时,可以根据该第一页面渲染文件加载目标页面,无需对目标页面重新进行渲染,提高了页面加载的速度,提升了用户的使用体验。
下面结合附图对本发明的具体实施方式进行详细说明。
图1是根据一示例性实施例示出的一种页面加载的方法的流程图,如图1所示,该方法可以包括以下步骤:
在步骤S101中,响应于对目标页面的渲染请求,获取预先存储的一个或多个历史页面对应的历史页面渲染文件。
在实际应用场景中,在用户初次进入或者触发跳转至目标页面的跳转请求后,将会触发对目标页面的渲染请求。
其中,一个或多个历史页面渲染文件可以是对一个或多个历史页面进行渲染后存储得到的。
在一些实施例中,该目标页面可以是预先设置的需要存储的页面,例如可以通过指定组件封装目标页面的方式预先确定需要存储的页面。若用户触发对目标页面的渲染请求,可以通过获取预先存储的一个或多个历史页面对应的历史页面渲染文件,以便于进一步确定一个或多个历史页面对应的历史页面渲染文件中是否存在该目标页面对应的第一页面渲染文件。若用户触发渲染请求的页面不包含在目标页面中,可以确定该页面不需要被存储,则可以根据现有技术中的浏览器渲染机制在浏览器上直接渲染该页面,一定程度上也减轻了存储空间的存储压力。
在步骤S102中,在一个或多个历史页面对应的历史页面渲染文件中不存在该目标页面对应的第一页面渲染文件的情况下,向该目标页面对应的服务器获取该目标页面的页面数据。
示例地,一个或多个历史页面对应的历史页面渲染文件中不存在该目标页面对应的第一页面渲染文件通过以下方式确定:可以先获取目标页面的第一页面标识信息,在一个或多个历史页面对应的第二页面标识信息中不包含该第一页面标识信息的情况下,确定一个或多个历史页面对应的历史页面渲染文件中不存在该目标页面对应的第一页面渲染文件。
具体地,首先可以获取该目标页面的第一页面标识信息。其中,可以先获取该目标页面的页面地址信息,根据该页面地址信息,生成该目标页面的键(key)值。再根据该键值,得到该第一页面标识信息。示例地,该页面地址信息例如可以是页面URL(英文:UniformResource Locator;中文:统一资源定位符)路径,如目标页面的页面URL路径为http://www.xxx.com/a/b,那么,该目标页面的键值可以为“key_a_b”,然后可以将该键值作为第一页面标识信息,即该目标页面的第一页面标识信息为“key_a_b”。类似地,一个或多个历史页面对应的第二页面标识信息也可以根据历史页面的页面地址信息通过上述方法得到。
在本步骤中,若一个或多个历史页面对应的历史页面渲染文件中不存在该目标页面对应的第一页面渲染文件,可以确定该目标页面是首次进行渲染,则可以向目标页面对应的服务器获取用于渲染目标页面的页面数据。
在步骤S103中,根据该页面数据进行虚拟渲染,以得到该第一页面渲染文件。
在本步骤中,相较于现有技术中直接将页面数据渲染在浏览器中,本实施例是将页面数据虚拟渲染至第一页面渲染文件中。这样,可以将目标页面的第一页面渲染文件都保存下来,在用户下次访问目标页面时,不需要再对目标页面进行渲染,可以直接根据第一页面渲染文件加载目标页面,避免了重复渲染,同时提高了页面加载的速度。
在步骤S104中,根据该第一页面渲染文件,加载该目标页面。
采用上述方案,在一个或多个历史页面对应的历史页面渲染文件中不存在目标页面对应的第一页面渲染文件的情况下,也即该目标页面是首次进行渲染的情况下,先通过页面数据进行虚拟渲染,以得到渲染后的第一页面渲染文件,再根据第一页面渲染文件加载目标页面。也就是说,本发明不是直接在浏览器中对目标页面进行渲染的,而是先将页面数据虚拟渲染至第一页面渲染文件中,再根据第一页面渲染文件加载目标页面。这样,当用户再次访问该目标页面时,可以根据该第一页面渲染文件加载目标页面,无需对目标页面重新进行渲染,提高了页面加载的速度,提升了用户的使用体验。
图2是根据一示例性实施例示出的另一种页面加载的方法的流程图,如图2所示,该方法还可以包括以下步骤:
在步骤S105中,在该一个或多个历史页面对应的历史页面渲染文件中存在该目标页面对应的第一页面渲染文件的情况下,从预先存储的该一个或多个历史页面对应的历史页面渲染文件中,确定该目标页面对应的第二页面渲染文件。
其中,该历史页面渲染文件中包括用于记录该历史页面中各个页面元素的第一渲染节点,该第一渲染节点为根据历史页面的页面数据进行渲染后得到的。
同样地,首先可以获取该目标页面的第一页面标识信息。其次,可以在一个或多个历史页面对应的第二页面标识信息中包含该第一页面标识信息的情况下,确定一个或多个历史页面对应的历史页面渲染文件中存在该目标页面对应的第一页面渲染文件。
在本步骤中,在一个或多个历史页面对应的历史页面渲染文件中存在该目标页面对应的第一页面渲染文件的情况下,可以确定该目标页面为非首次渲染,那么可以从预先存储的一个或多个历史页面对应的历史页面渲染文件中,确定该目标页面对应的第二页面渲染文件。这样,可以直接根据获取的第二页面渲染文件,加载目标页面,避免了重复渲染。并且,第二页面渲染文件中存储了目标页面对应的历史页面的页面元素以及页面的状态(例如,滚动页面至指定位置、对页面组件的筛选等)。也就是说,用户在历史时刻对目标页面对应的历史页面进行的所有操作都会被保存下来,当用户再次访问目标页面时,无需再重新进行相关操作(如重新滚动页面至指定位置、重新对页面组件筛选等),提升了用户的使用体验。
在步骤S106中,根据该第二页面渲染文件,加载该目标页面。
图3是根据一示例性实施例示出的另一种页面加载的方法的流程图,如图3所示,步骤S103根据该页面数据进行虚拟渲染,以得到第一页面渲染文件包括:
在步骤S1031中,根据该页面数据,在存储空间中进行虚拟渲染,得到该目标页面中各个页面元素对应的第二渲染节点。
在步骤S1032中,根据该第二渲染节点,得到该第一页面渲染文件。
其中,该第一页面渲染文件例如可以是在存储空间中创建的用于存储目标页面的第二渲染节点的虚拟DOM(英文:Document Object Model;中文:文档对象模型)。相应地,该第二渲染节点例如可以是根据页面数据在存储空间中进行虚拟渲染,得到的该目标页面中各个页面元素对应的DOM节点。
类似地,上述第一渲染节点也可以是历史页面中各个页面元素对应DOM节点。
其中,存储空间可以为内存或者缓存,本领域技术人员可以根据实际需要进行选择,此处不做限定。
图4是根据一示例性实施例示出的另一种页面加载的方法的流程图,如图4所示,该方法还可以包括以下步骤:
在步骤S107中,获取该目标页面的第一页面标识信息。
为了便于用户后续再次访问目标页面时,可以根据第一页面标识信息找到对应的存储的历史页面渲染文件进行加载,无需重新渲染目标页面。在一些实施例中,还可以通过以下步骤获取目标页面的第一页面标识信息:S1,获取该目标页面的页面地址信息。S2,根据该页面地址信息,生成该目标页面的键值。S3,根据该键值和该第一页面渲染文件,得到该第一页面标识信息。示例地,若该键值为“key_a_b”,可以将键值作为键,将第一页面渲染文件中的第二渲染节点作为值,从而形成键值对形式,如“{key:“key_a_b”,value:“页面a”}”,其中,“key_a_b”为键值对中的键,“页面a”为键值对中的值。
在步骤S108中,根据该第一页面标识信息,将该第一页面渲染文件作为该历史页面对应的历史页面渲染文件进行存储。
这样,当用户触发对目标页面的页面跳转请求时,只有展示在目标页面上的页面组件被损毁,而目标页面对应的第一页面渲染文件已经被存储下来,在下一次访问该目标页面时,就可以直接根据存储的该历史页面渲染文件对目标页面进行加载,节省了页面数据请求和页面渲染的时间,提升了用户的使用体验。
需要说明的是,在图4中,步骤S104也可以在步骤S108之后执行,也就是说,可以在将该第一页面渲染文件作为该历史页面对应的历史页面渲染文件进行存储后,直接从历史页面对应的历史页面渲染文件中获取该目标页面对应的第一页面渲染文件,这种方式可以避免直接在浏览器中渲染该目标页面。
图5是根据一示例性实施例示出的另一种页面加载的方法的流程图,考虑到现有技术中的渲染方法是直接在浏览器上渲染的,如果用户之前做过例如筛选、滑动页面、填写等操作,都将不会被保存下来,需要用户重新进行操作,影响了用户的使用体验。因此,如图5所示,该方法还可以包括以下步骤:
在步骤S109中,响应于对该目标页面的页面跳转请求,获取当前该目标页面中的目标页面元素。
为了保存目标页面中的所有页面元素的最新状态,在本实施例中,在用户触发对该目标页面的页面跳转请求时,获取该目标页面的当前页面中目标页面元素。其中,该目标页面元素用于记录目标页面在当前时刻页面中所有页面组件以及目标页面的页面状态,页面状态例如可以包括目标页面的在当前时刻的滚动位置或者用户对页面组件的筛选等。这样,在用户再次访问该目标页面时,目标页面可以保持上一次进入该目标页面时的状态,用户无需重新进行操作。
在步骤S110中,根据该目标页面元素,对该第一页面渲染文件进行更新。
示例地,可以将目标页面元素与第一页面渲染文件中与页面元素进行比较,获取目标页面元素与第一页面渲染文件中与页面元素之间存在差异的部分,并根据存在差异的部分对第一页面渲染文件进行更新,并将更新后的第一页面渲染文件作为该历史页面对应的历史页面渲染文件进行存储。
需要说明的是,若目标页面是通过第二页面渲染文件进行加载得到的,也就是说目标页面是非首次渲染的,同样可以响应于对该目标页面的页面跳转请求,获取该目标页面的当前页面中目标页面元素,并根据该目标页面元素对该第二页面渲染文件进行更新,并将更新后的第二页面渲染文件作为该历史页面对应的历史页面渲染文件进行存储。这样,可以保证历史页面对应的历史页面渲染文件中记载的都是各个页面最新的页面状态。
另外,考虑到在一些场景下,用户希望目标页面可以重置到初始状态,同时为了防止存储空间发生内存泄露,保证页面的加载不受影响。因此,如图6所示,该方法还可以包括以下步骤:
在步骤S111中,在存储的一个或多个历史页面对应的历史页面渲染文件的存储时间达到预设存储时间阈值的情况下,删除任一或多个历史页面对应的历史页面渲染文件;或者,在用户触发存储重置请求后,删除任一或多个该历史页面对应的历史页面渲染文件。
在本实施例中,若用户长时间没有访问过存储的历史页面,即存储的一个或多个历史页面对应的历史页面渲染文件的存储时间达到预设存储时间阈值,为了防止存储空间发生内存泄露,保证页面的加载不受影响,需要清除掉长时间未访问的历史页面,即删除任一或多个历史页面对应的历史页面渲染文件。其中,可以仅删除存储空间中存储时间达到预设存储时间阈值的历史页面对应的历史页面渲染文件,还可以在任意一个历史页面对应的历史页面渲染文件的存储时间达到预设存储时间阈值的情况下,删除存储空间中存储的所有历史页面渲染文件。
若用户希望存储重置,例如用户触发对该目标页面的页面刷新请求,那么为了满足用户需求,可以仅删除该目标页面在存储空间中存储的历史页面渲染文件,还可以删除存储空间中存储的所有历史页面渲染文件。这样,用户在对目标页面重新进行访问时,由于存储空间中没有存储目标页面对应的第一页面渲染文件,就会对目标页面重新进行渲染,也就是说目标页面将回到页面的初始状态。
采用上述方案,在一个或多个历史页面对应的历史页面渲染文件中不存在目标页面对应的第一页面渲染文件的情况下,也即该目标页面是首次进行渲染的情况下,先通过页面数据进行虚拟渲染,以得到渲染后的第一页面渲染文件,再根据第一页面渲染文件加载目标页面。也就是说,本发明不是直接在浏览器中对目标页面进行渲染的,而是先将页面数据虚拟渲染至第一页面渲染文件中,再根据第一页面渲染文件加载目标页面。这样,当用户再次访问该目标页面时,可以根据该第一页面渲染文件加载目标页面,无需对目标页面重新进行渲染,提高了页面加载的速度,提升了用户的使用体验。
图7是根据一示例性实施例示出的一种页面加载的装置的结构图,如图7所示,该装置200包括:
第一获取模块201,用于响应于对目标页面的渲染请求,获取预先存储的一个或多个历史页面对应的历史页面渲染文件;
第二获取模块202,用于在该一个或多个历史页面对应的历史页面渲染文件中不存在该目标页面对应的第一页面渲染文件的情况下,向该目标页面对应的服务器获取该目标页面的页面数据;
渲染模块203,用于根据该页面数据进行虚拟渲染,以得到该第一页面渲染文件;
第一加载模块204,用于根据该第一页面渲染文件,加载该目标页面。
可选地,如图8所示,该装置200还包括:
确定模块205,用于在该一个或多个历史页面对应的历史页面渲染文件中存在该目标页面对应的第一页面渲染文件的情况下,从预先存储的该一个或多个历史页面对应的历史页面渲染文件中,确定该目标页面对应的第二页面渲染文件;其中,该历史页面渲染文件中包括用于记录该历史页面中各个页面元素的第一渲染节点;
第二加载模块206,用于根据该第二页面渲染文件,加载该目标页面。
可选地,该渲染模块203,用于根据该页面数据,在存储空间中进行虚拟渲染,得到该目标页面中各个页面元素对应的第二渲染节点;根据该第二渲染节点,得到该第一页面渲染文件。
可选地,如图9所示,该装置200还包括:
第三获取模块207,用于获取该目标页面的第一页面标识信息;
存储模块208,用于根据该第一页面标识信息,将该第一页面渲染文件作为该历史页面对应的历史页面渲染文件进行存储。
可选地,如图10所示,该装置200还包括:
第四获取模块209,用于响应于对该目标页面的页面跳转请求,获取当前该目标页面中的目标页面元素;
更新模块210,用于根据该目标页面元素,对该第一页面渲染文件进行更新。
可选地,该第三获取模块207,用于获取该目标页面的页面地址信息;根据该页面地址信息,生成该目标页面的键值;根据该键值和该第一页面渲染文件,得到该第一页面标识信息。
可选地,该第三获取模块207,用于获取该目标页面的第一页面标识信息;
该第二获取模块202,用于在该一个或多个历史页面对应的第二页面标识信息中不包含该第一页面标识信息的情况下,确定该一个或多个历史页面对应的历史页面渲染文件中不存在该目标页面对应的第一页面渲染文件。
可选地,如图11所示,该装置200还包括:
删除模块211,用于在存储的该一个或多个历史页面对应的历史页面渲染文件的存储时间达到预设存储时间阈值的情况下,删除任一或多个该历史页面对应的历史页面渲染文件;或者,在用户触发存储重置请求后,删除任一或多个该历史页面对应的历史页面渲染文件。
采用上述装置,在一个或多个历史页面对应的历史页面渲染文件中不存在目标页面对应的第一页面渲染文件的情况下,也即该目标页面是首次进行渲染的情况下,先通过页面数据进行虚拟渲染,以得到渲染后的第一页面渲染文件,再根据第一页面渲染文件加载目标页面。也就是说,本发明不是直接在浏览器中对目标页面进行渲染的,而是先将页面数据虚拟渲染至第一页面渲染文件中,再根据第一页面渲染文件加载目标页面。这样,当用户再次访问该目标页面时,可以根据该第一页面渲染文件加载目标页面,无需对目标页面重新进行渲染,提高了页面加载的速度,提升了用户的使用体验。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图12是根据一示例性实施例示出的一种电子设备300的框图。如图12所示,该电子设备300可以包括:处理器301,存储器302。该电子设备300还可以包括多媒体组件303,输入/输出(I/O)接口304,以及通信组件305中的一者或多者。
其中,处理器301用于控制该电子设备300的整体操作,以完成上述的页面加载的方法中的全部或部分步骤。存储器302用于存储各种类型的数据以支持在该电子设备300的操作,这些数据例如可以包括用于在该电子设备300上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器302可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件303可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器302或通过通信组件305发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口304为处理器301和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件305用于该电子设备300与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near FieldCommunication,简称NFC),2G、3G、4G、NB-IOT、eMTC、或其他5G等等,或它们中的一种或几种的组合,在此不做限定。因此相应的该通信组件305可以包括:Wi-Fi模块,蓝牙模块,NFC模块等等。
在一示例性实施例中,电子设备300可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的页面加载的方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的页面加载的方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器302,上述程序指令可由电子设备300的处理器301执行以完成上述的页面加载的方法。
以上结合附图详细描述了本发明的优选实施方式,但是,本发明并不限于上述实施方式中的具体细节,在本发明的技术构思范围内,可以对本发明的技术方案进行多种简单变型,这些简单变型均属于本发明的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本发明对各种可能的组合方式不再另行说明。
此外,本发明的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明的思想,其同样应当视为本发明所公开的内容。
Claims (11)
1.一种页面加载的方法,其特征在于,所述方法包括:
响应于对目标页面的渲染请求,获取预先存储的一个或多个历史页面对应的历史页面渲染文件;
在所述一个或多个历史页面对应的历史页面渲染文件中不存在所述目标页面对应的第一页面渲染文件的情况下,向所述目标页面对应的服务器获取所述目标页面的页面数据;
根据所述页面数据进行虚拟渲染,以得到所述第一页面渲染文件;
根据所述第一页面渲染文件,加载所述目标页面。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述一个或多个历史页面对应的历史页面渲染文件中存在所述目标页面对应的第一页面渲染文件的情况下,从预先存储的所述一个或多个历史页面对应的历史页面渲染文件中,确定所述目标页面对应的第二页面渲染文件;其中,所述历史页面渲染文件中包括用于记录所述历史页面中各个页面元素的第一渲染节点;
根据所述第二页面渲染文件,加载所述目标页面。
3.根据权利要求1所述的方法,其特征在于,所述根据所述页面数据进行虚拟渲染,以得到所述第一页面渲染文件包括:
根据所述页面数据,在存储空间中进行虚拟渲染,得到所述目标页面中各个页面元素对应的第二渲染节点;
根据所述第二渲染节点,得到所述第一页面渲染文件。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述目标页面的第一页面标识信息;
根据所述第一页面标识信息,将所述第一页面渲染文件作为所述历史页面对应的历史页面渲染文件进行存储。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
响应于对所述目标页面的页面跳转请求,获取当前所述目标页面中的目标页面元素;
根据所述目标页面元素,对所述第一页面渲染文件进行更新。
6.根据权利要求4所述的方法,其特征在于,所述获取所述目标页面的第一页面标识信息包括:
获取所述目标页面的页面地址信息;
根据所述页面地址信息,生成所述目标页面的键值;
根据所述键值和所述第一页面渲染文件,得到所述第一页面标识信息。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述目标页面的第一页面标识信息;
所述一个或多个历史页面对应的历史页面渲染文件中不存在所述目标页面对应的第一页面渲染文件通过以下方式确定:
在所述一个或多个历史页面对应的第二页面标识信息中不包含所述第一页面标识信息的情况下,确定所述一个或多个历史页面对应的历史页面渲染文件中不存在所述目标页面对应的第一页面渲染文件。
8.根据权利要求1至7中任一项所述的方法,其特征在于,所述方法还包括:
在存储的所述一个或多个历史页面对应的历史页面渲染文件的存储时间达到预设存储时间阈值的情况下,删除任一或多个所述历史页面对应的历史页面渲染文件;或者,
在用户触发存储重置请求后,删除任一或多个所述历史页面对应的历史页面渲染文件。
9.一种页面加载的装置,其特征在于,所述装置包括:
第一获取模块,用于响应于对目标页面的渲染请求,获取预先存储的一个或多个历史页面对应的历史页面渲染文件;
第二获取模块,用于在所述一个或多个历史页面对应的历史页面渲染文件中不存在所述目标页面对应的第一页面渲染文件的情况下,向所述目标页面对应的服务器获取所述目标页面的页面数据;
渲染模块,用于根据所述页面数据进行虚拟渲染,以得到所述第一页面渲染文件;
第一加载模块,用于根据所述第一页面渲染文件,加载所述目标页面。
10.一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1至8中任一项所述方法的步骤。
11.一种电子设备,其特征在于,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现权利要求1至8中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210556064.4A CN114817816B (zh) | 2022-05-20 | 2022-05-20 | 页面加载的方法、装置、存储介质以及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210556064.4A CN114817816B (zh) | 2022-05-20 | 2022-05-20 | 页面加载的方法、装置、存储介质以及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114817816A true CN114817816A (zh) | 2022-07-29 |
CN114817816B CN114817816B (zh) | 2024-09-13 |
Family
ID=82517295
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210556064.4A Active CN114817816B (zh) | 2022-05-20 | 2022-05-20 | 页面加载的方法、装置、存储介质以及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114817816B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210133388A1 (en) * | 2019-10-31 | 2021-05-06 | Baidu Online Network Technology (Beijing) Co., Ltd. | Webpage rendering method, device, electronic apparatus and storage medium |
CN113051503A (zh) * | 2021-03-12 | 2021-06-29 | 平安银行股份有限公司 | 浏览器页面渲染方法、装置、电子设备及存储介质 |
CN113569173A (zh) * | 2021-02-03 | 2021-10-29 | 腾讯科技(深圳)有限公司 | 页面加载方法及装置、存储介质、电子设备 |
-
2022
- 2022-05-20 CN CN202210556064.4A patent/CN114817816B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210133388A1 (en) * | 2019-10-31 | 2021-05-06 | Baidu Online Network Technology (Beijing) Co., Ltd. | Webpage rendering method, device, electronic apparatus and storage medium |
CN113569173A (zh) * | 2021-02-03 | 2021-10-29 | 腾讯科技(深圳)有限公司 | 页面加载方法及装置、存储介质、电子设备 |
CN113051503A (zh) * | 2021-03-12 | 2021-06-29 | 平安银行股份有限公司 | 浏览器页面渲染方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114817816B (zh) | 2024-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108038134B (zh) | 页面展示的方法、装置和存储介质以及电子设备 | |
CN107451181B (zh) | 页面渲染方法和装置 | |
CN109542361B (zh) | 一种分布式存储系统文件读取方法、系统及相关装置 | |
CN110110262B (zh) | 浏览器内存管理方法、装置和设备 | |
RU2615682C2 (ru) | Способ, устройство, сервер и терминал для посещения веб-страницы | |
RU2604420C2 (ru) | Способ, устройство и терминал для обновления облегченных приложений в офлайновом режиме | |
CN108228293B (zh) | 一种界面皮肤切换方法及装置 | |
CN105138376A (zh) | 混合模式应用、其网页资源升级方法、移动终端以及系统 | |
CN106533926B (zh) | 一种网页信息传播方法以及装置 | |
CN112631679B (zh) | 一种微应用的预加载方法及装置 | |
CN109144998B (zh) | 节点数据的展现方法、装置、存储介质及电子设备 | |
CN107479868B (zh) | 一种界面加载方法、装置及设备 | |
CN110019024B (zh) | 一种目录查询方法、系统及电子设备和存储介质 | |
US10375149B2 (en) | Application registration and interaction | |
CN111158597A (zh) | 一种元数据读取方法、装置及电子设备和存储介质 | |
CN110046175B (zh) | 一种缓存更新、数据返回方法及装置 | |
CN111241040A (zh) | 信息获取方法、装置、电子设备及计算机存储介质 | |
CN111625712B (zh) | 用户浏览行为上报方法、装置、可读存储介质及电子设备 | |
CN114791961A (zh) | 媒体数据处理方法、装置及终端设备 | |
KR101985990B1 (ko) | 정보 처리 단말, 방법 및 저장 매체 | |
CN108008925A (zh) | 分屏模式下的应用数据共享方法、装置、终端及存储介质 | |
CN116954680A (zh) | 存储系统的插件更新方法、装置、设备、介质及程序产品 | |
KR20150045073A (ko) | 데이터 운용 방법 및 이를 지원하는 시스템 | |
CN112926002A (zh) | 一种服务请求的处理方法及装置 | |
CN114817816B (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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20230728 Address after: 224008 Rooms 404-405 and 504, Building B-17-1, Big data Industrial Park, Kecheng Street, Yannan High tech Zone, Yancheng, Jiangsu Province Applicant after: Yancheng Tianyanchawei Technology Co.,Ltd. Address before: 224008 room 501-503, building b-17-1, Xuehai road big data Industrial Park, Kecheng street, Yannan high tech Zone, Yancheng City, Jiangsu Province (CNK) Applicant before: Yancheng Jindi Technology Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |