CN111124528A - 页面加载方法、装置、电子设备及计算机可读存储介质 - Google Patents
页面加载方法、装置、电子设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN111124528A CN111124528A CN201911092579.8A CN201911092579A CN111124528A CN 111124528 A CN111124528 A CN 111124528A CN 201911092579 A CN201911092579 A CN 201911092579A CN 111124528 A CN111124528 A CN 111124528A
- Authority
- CN
- China
- Prior art keywords
- page
- data
- loading
- process node
- template file
- 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
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
-
- 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/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开一种页面加载方法、装置、电子设备及计算机可读存储介质。所述页面加载方法包括:根据当前页面的数据处理结果信息,向服务器端发送页面加载请求,所述页面加载请求包括待处理业务领域对象数据;接收所述服务器端返回的处理后的业务领域对象数据及所述服务器端基于预定义流程节点配置信息查找到的页面模板文件,所述页面模板文件与所述当前页面对应流程节点的下一流程节点相对应;以及根据所述页面模板文件及所述处理后的业务领域对象数据,加载并渲染所述下一流程节点对应的页面。根据本发明提供的页面加载方法,能够依次实现后续流程节点对应页面的快速加载与渲染。
Description
技术领域
本发明涉及web页面开发领域,具体而言,涉及一种页面加载方法、装置、电子设备及计算机可读存储介质。
背景技术
诸如保险等互联网公司的日常业务中存在大量与互联网用户交互的场景。随着各种互联网工具的兴起,无论是PC端浏览器还是微信、支付宝等移动端应用程序,保险公司均需开发相应的web页面以支持各类功能和提供各种服务。随着越来越多的业务转移到线上,基于web开发的服务系统不断趋于复杂,开发和运维成本也不断增加。
在现有的web业务系统开发中,开发人员需要根据业务需求规划开发业务流程所需的页面功能,例如web页面设计、数据模型设计、业务逻辑设计等。页面在被客户端获取之前存储于服务器端,因此需要通过接口明确指示下一页面的服务器访问路径,由客户端通过发起数据获取请求的方式(例如GET请求URL)从服务器端获取期望的资源并进行展示。为使各业务流程节点的页面串联起来,开发人员需要将页面的跳转逻辑以编程的方式实现在各个页面中。
然而,随着例如保险公司产品线与服务的不断丰富,各类业务流程逐渐呈现出局部重复性、差异性等特点,依然使用现有的页面开发技术将付出大量重复性工作,或因业务流程的轻微改动而不得不重新开发一个区别并不很大的新页面,同时决定了页面加载时可能存在的缺陷。例如图1所示:保险产品A需要三个业务流程节点完成在线投保交易,分别为投保信息填写、在线支付和交易结果展示;保险产品B需要四个业务流程节点完成在线投保交易,分别为投保信息填写、在线支付、健康问卷填写和交易结果展示。假设投保信息填写流程使用A1页面,在线支付流程使用A2页面,交易结果展示流程使用A3页面,健康问卷填写流程使用B1页面,即使保险产品B投保流程所使用的A1、A2、A3页面与保险产品A的逻辑代码差异很小,服务器端实际上也需要为保险产品A、B配置两套页面A1-A1’、A2-A2’、A3-A3’,且其中存在大量重复开发的页面代码。同时,客户端在一整套业务流程中需要不断地进行实际的页面切换或者跳转。
综上所述,现有的页面加载方式速度缓慢、效率低下且占用服务器资源极多。面对持续扩张的业务需求,现有的页面加载方式还将导致前期页面开发成本的发散式增加、后期系统整体维护性与扩展性的恶化,最终导致无法维护或无法扩展的严重后果。
在所述背景技术部分公开的上述信息仅用于加强对本发明的背景的理解,因此它可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
有鉴于此,本发明提供一种页面加载方法、装置、电子设备及计算机可读存储介质。
本发明的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本发明的实践而习得。
根据本发明的一方面,提供一种页面加载方法,包括:根据当前页面的数据处理结果信息,向服务器端发送页面加载请求,所述页面加载请求包括待处理业务领域对象数据;接收所述服务器端返回的处理后的业务领域对象数据及所述服务器端基于预定义流程节点配置信息查找到的页面模板文件,所述页面模板文件与所述当前页面对应流程节点的下一流程节点相对应;以及根据所述页面模板文件及所述处理后的业务领域对象数据,加载并渲染所述下一流程节点对应的页面。
根据本发明的一实施方式,在根据所述页面模板文件及所述处理后的业务领域对象数据,加载并渲染所述下一流程节点对应的页面之前,所述方法还包括:将所述当前页面的文档对象模型数据存储于缓存中,所述文档对象模型数据包括页面模板数据及业务领域对象数据。
根据本发明的一实施方式,根据所述页面模板文件及所述处理后的业务领域对象数据,加载并渲染所述下一流程节点对应的页面包括:删除所述当前页面的文档对象模型数据;根据预设的请求头自定义参数,确定所述页面模板文件的类型;根据所述类型加载所述页面模板文件的页面模板数据;以及在加载的所述页面模板数据中,渲染所述处理后的业务领域对象数据。
根据本发明的一实施方式,所述页面模板文件的类型包括:自定义错误节点、自定义外部资源地址及超文本标记语言等。
根据本发明的一实施方式,在加载并渲染所述下一流程节点对应的页面之后,所述方法还包括:接收来自所述下一流程节点对应的页面的页面后退请求;根据预设的模板自定义参数,判断所述下一流程节点对应的页面是否可以后退;当判定所述下一流程节点对应的页面可以后退时,在所述缓存中查找所述当前页面的文档对象模型数据;删除所述下一流程节点对应的页面的文档对象模型数据;加载所述当前页面的文档对象模型数据中的页面模板数据;以及在加载的所述页面模板数据中,渲染所述当前页面的文档对象模型数据中的业务领域对象数据。
根据本发明的一实施方式,所述预定义流程节点配置信息包括至少一个业务流程,每一个所述业务流程包括至少一个流程节点及预定义的所述流程节点的连接关系。
根据本发明的一实施方式,所述向服务器端发送页面加载请求包括:以异步请求方式向服务器端发送页面加载请求。
根据本发明的另一方面,提供一种页面加载装置,包括:请求发送模块,用于根据当前页面的数据处理结果信息,向服务器端发送页面加载请求,所述页面加载请求包括待处理业务领域对象数据;数据接收模块,用于接收所述服务器端返回的处理后的业务领域对象数据及所述服务器端基于预定义流程节点配置信息查找到的页面模板文件,所述页面模板文件与所述当前页面对应流程节点的下一流程节点相对应;以及页面加载模块,用于根据所述页面模板文件及所述处理后的业务领域对象数据,加载并渲染所述下一流程节点对应的页面。
根据本发明的再一方面,提供一种电子设备,包括:存储器、处理器及存储在所述存储器中并可在所述处理器中运行的可执行指令,所述处理器执行所述可执行指令时实现如上述任一种页面加载方法。
根据本发明的再一方面,提供一种计算机可读存储介质,其上存储有计算机可执行指令,所述可执行指令被处理器执行时实现如上述任一种页面加载方法。
根据本发明提供的页面加载方法,基于服务器端预定义的流程节点配置和页面模板,能够依次实现后续流程节点对应页面的快速加载与渲染,而并不实际进行页面切换或者跳转,同时为前期页面开发成本的显著降低、后期系统可维护性的大幅提升以及互联网产品的高速上线提供了便利条件。
另外,根据一些实施例,本发明提供的页面加载方法能够根据来自当前页面的后退请求,找到在先存储的前一页面文档对象模型数据,能够快速地实现页面后退,同样不需要真正地切换或者跳转页面。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本发明。
附图说明
通过参照附图详细描述其示例实施例,本发明的上述和其它目标、特征及优点将变得更加显而易见。
图1是根据一示例示出的一种基于现有的页面开发技术加载页面的示意图。
图2是根据一示例性实施方式示出的一种页面加载方法的流程图。
图3是根据一示例性实施方式示出的另一种页面加载方法的流程图。
图4是根据一示例性实施方式示出的再一种页面加载方法的流程图。
图5是根据一示例性实施方式示出的再一种页面加载方法的流程图。
图6是根据一示例性实施方式示出的一种页面加载装置的框图。
图7是根据一示例性实施方式示出的一种电子设备的结构示意图。
图8是根据一示例性实施方式示出的一种计算机可读存储介质的示意图。
图9是根据一示例性实施例示出的一种页面加载过程的示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本发明将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。附图仅为本发明的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本发明的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本发明的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、装置、步骤等。在其它情况下,不详细示出或描述公知结构、方法、装置、实现或者操作以避免喧宾夺主而使得本发明的各方面变得模糊。
此外,在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。符号“/”一般表示前后关联对象是一种“或”的关系。术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。
如上所述,现有的页面加载方式速度缓慢、效率低下、占用服务器资源极多;且在面对持续扩张的业务需求时,还将导致前期页面开发成本的发散式增加、后期系统整体维护性与扩展性的恶化,最终导致无法维护或无法扩展的严重后果。因此,本发明提供一种新的页面加载方法,能够基于服务器端预定义的流程节点配置和页面模板依次实现后续流程节点对应页面的快速加载与渲染,而并不实际进行页面切换或者跳转,同时为前期页面开发成本的显著降低、后期系统可维护性的大幅提升以及互联网产品的高速上线提供了便利条件。更优地,本发明一些实施例提供的页面加载方法还能够实现页面的快速后退,同样也不需要真正地切换或者跳转页面。
图2是根据一示例性实施方式示出的一种页面加载方法的流程图。如图2所示的页面加载方法例如可以应用于客户端(PC、笔记本电脑、上网本、平板电脑、智能手机等)。
以互联网在线投保场景为例,本发明实施例提供的方法例如可以被实施为web组件形式(如以“PageAction”命名),主要有以下两个功能:
(1)获取保险公司服务器端中预先定义的后续流程节点所对应的页面模板,并将页面模板中的模块与数据在客户端加载渲染出来,实现整个投保流程的自动化串联;
(2)提供一组接口,通过使用诸如“前进”、“后退”等用户指令来控制投保页面的流转去向,以及控制页面模板、业务领域对象(Business Object)等数据的本地存取,实现技术框架运行与业务逻辑处理的互不干扰。
参考图2,页面加载方法10包括:
在步骤S102中,根据当前页面的数据处理结果信息,向服务器端发送页面加载请求。
其中,页面加载请求包括待处理业务领域对象数据。
在一些实施例中,向服务器端发送页面加载请求包括:以异步请求方式向服务器端发送页面加载请求,但本发明不以此为限。
在具体实现时,例如可以由PageAction提供一种接口函数commitAction(),并在其中中指定了如下重要参数:
actionName--具体动作的名称,动作的描述在保险公司服务器端的流程定义中体现;
postDataObj--业务领域对象集合;
debugEngineUrl--开发调试时保险公司服务器端的流程引擎接口地址;
beforeCommitCallback--新模板文件加载前需要执行的函数;
afterCommitCallback--新模板文件加载后需要执行的函数。
当客户端当前页面内部的投保流程处理完成后,当前页面可根据数据处理结果信息调用commitAction()接口告知整个系统继续后续投保流程;PageAction携带等待保险公司服务器端处理的业务领域对象数据,以例如异步请求AJAX post()向保险公司服务器端发送一个页面加载请求,请求在客户端展示下一投保流程节点相对应的投保页面。
在步骤S104中,接收服务器端返回的处理后的业务领域对象数据及服务器端基于预定义流程节点配置信息查找到的页面模板文件。
其中,页面模板文件与当前页面对应流程节点的下一流程节点相对应。
在一些实施例中,预定义流程节点配置信息可包括至少一个业务流程,每一个业务流程可包括至少一个流程节点及预定义的流程节点的连接关系。
承上述,通过编程实现页面的内容与页面间流程的方式已无法满足线上产品与服务的扩张趋势。换言之,“一个页面里面有什么”、“下个页面该去哪里”等不再应该由开发人员在编写页面时以硬编码(Hard Coding)进行指定。
仍以互联网在线投保的流程为例:保险公司某类业务在微观之处有所区别,但其宏观流程具备一定的通用性。如果将具体的投保页面抽象为模板(template),则开发人员在开发具体的投保页面时,不再仅是针对某一个保险产品进行处理,而是一类保险产品;不再仅是编写某一个保险产品的投保页面,而是编写一类保险产品的投保页面模板。
如果再将具体的投保页面抽象为节点(node),则“业务流程节点A→业务流程节点B”这个描述就可以通过例如链表式的数据结构预先定义并存储于保险公司服务器端的数据库中。当面对不同类保险产品出现的部分流程重复或差异时,则可以通过这样的流程节点配置来指示投保系统在运行时应该调取哪个模板进行处理。例如,下表1所示为保险公司服务器端为某一业务流程所配置的示例性流程节点信息。通过表1可以看出,流程节点1的下一顺序流程节点为流程节点2,流程节点2的下一顺序流程节点为流程节点3;相对应地,页面模板文件template1的下一顺序页面模板文件为页面模板文件template2,页面模板文件template2的下一顺序页面模板文件为页面模板文件template3:
表1
流程节点ID | 页面模板文件名 | 下一流程节点ID |
1 | template1 | 2 |
2 | template2 | 3 |
3 | template3 | -- |
保险公司服务器端接收到PageAction发送的页面加载请求后,可通过如上表1所示的预定义流程节点配置信息陆续找到下一投保流程节点相对应的页面模板文件,并将页面模板文件和已经完成业务逻辑处理的业务领域对象数据一并返回给PageAction。
在一些实施例中,流程节点配置信息可基于MySQL关系型数据库进行定义;保险公司服务器端可通过Spring Boot服务处理业务逻辑;在系统部署时可将PageAction与其它前端组件进行压缩打包等合并处理以提升运行效率,压缩打包工具例如可以为gulp或webpack等。本发明不以上述任何手段和工具为限。
需要说明的是,对业务领域对象数据及具体保险产品属性的定义可根据具体的在线投保场景需求进行设计,且保险产品属性的定义最终将体现在业务领域对象数据中,二者的具体实现方式并不与web组件紧密耦合,故本文中不予赘述。
在步骤S106中,根据页面模板文件及处理后的业务领域对象数据,加载并渲染下一流程节点对应的页面。
承上述,PageAction将新模板文件中的内容及保险公司服务器端处理后的业务领域对象数据加载并渲染成下一投保流程节点对应的投保页面,并在客户端进行展示。
图9是根据一示例性实施例示出的一种页面加载过程的示意图。与图1相一致地,如图9所示也为保险产品A和保险产品B分别对应的两个投保流程。保险产品A对应投保流程1,需要三个业务流程节点完成在线投保交易,分别为投保信息填写、在线支付和交易结果展示;保险产品B对应投保流程2,需要四个业务流程节点完成在线投保交易,分别为投保信息填写、在线支付、健康问卷填写和交易结果展示。
在页面开发层面上,与图1相比,本发明实施例所示的页面加载方法可以通过web组件PageAction实现投保客户端与保险公司服务器端间的通信。保险公司服务器端提供有页面模板文件库以及流程节点配置信息,其中页面模板文件库中的页面模板文件(如图9中所示的template1-4)可以通用于不同的投保流程和不同的保险产品,而无需为每一个投保流程或每一种保险产品开发一套单独的投保页面,且未来出现的与现有投保流程相符合的新保险产品也可复用现存的页面模板文件。至于不同投保流程或不同保险产品间的投保页面差异,则是通过本发明的业务领域对象数据所体现;流程节点配置信息可包括至少一个业务流程(如图9中所示的投保流程1、2),每一个业务流程可根据保险产品的需求包括至少一个流程节点及预定义的流程节点的连接关系(如图9中所示的投保流程1对应的流程节点“1→2→3”、投保流程2对应的流程节点“1→2→4→3”)。
在页面加载过程的表现形式上,如图1所示的现有方案需要开发人员在开发投保页面时通过例如GET请求URL(Uniform Resource Locator,统一资源定位符)的方式来确定web资源位置,加载时浏览器的页面切实地发生了切换。而如图9所示的本发明方案通过例如封装的post请求获取页面模板数据,并自动完成整个页面的加载与渲染,整个过程中浏览器的页面并没有发生切换。
根据本发明实施方式提供的页面加载方法,基于服务器端预定义的流程节点配置和页面模板,能够依次实现后续流程节点对应页面的快速加载与渲染,而并不实际进行页面切换或者跳转,同时为前期页面开发成本的显著降低、后期系统可维护性的大幅提升以及互联网产品的高速上线提供了便利条件。
应清楚地理解,本发明描述了如何形成和使用特定示例,但本发明的原理不限于这些示例的任何细节。相反,基于本发明公开的内容的教导,这些原理能够应用于许多其它实施方式。
图3是根据一示例性实施方式示出的另一种页面加载方法的流程图。与图2所示方法10的不同之处在于,图3所示的方法20进一步提供了本地存储页面数据的方法,即上述方法10的一实施例。同样地,如图3所示的页面加载方法例如也可以应用于客户端。
仍以上述互联网在线投保的流程为例,在加载并渲染下一流程节点对应的页面之前,参考图3,页面加载方法10还包括:
在步骤S202中,将当前页面的文档对象模型数据存储于缓存中。
其中,文档对象模型数据包括页面模板数据及业务领域对象数据。
以客户端当前展示的页面为基准,PageAction在进行下一页面的加载与渲染之前,可以将当前页面的DOM(Document Object Model,文档对象模型)数据以例如链表式的数据结构存储于缓存(例如为客户端浏览器的本地缓存“Local Storage”)中,以用于当客户端展示下一页面并请求页面后退时恢复历史页面(即当前页面的模板框架)及历史数据(即当前页面中的业务领域对象数据)。
在一些实施例中,步骤S202的数据缓存操作可以于步骤S102之前执行,也可以于步骤S102和步骤S104之间执行,还可以于步骤S104和步骤S106之间执行,本发明不以其执行的时间节点为限。
图4是根据一示例性实施方式示出的再一种页面加载方法的流程图。与图2所示方法10或图3所示方法20的不同之处在于,图4所示的方法30进一步提供了根据页面模板文件及处理后的业务领域对象数据,加载并渲染下一流程节点对应页面的具体方法,即上述方法10中步骤S106的一实施例。同样地,如图4所示的页面加载方法例如也可以应用于客户端。
参考图4,方法10中的步骤S106还包括:
在步骤S302中,删除当前页面的文档对象模型数据。
承上述,PageAction接收到保险公司服务器端返回的处理后的业务领域对象数据及页面模板文件后,首先从客户端删除当前投保流程节点对应页面的文档对象模型数据,也即同时删除当前页面的页面模板数据及业务领域对象数据。
在步骤S304中,根据预设的请求头自定义参数,确定页面模板文件的类型。
在一些实施例中,页面模板文件的类型包括:自定义错误节点、自定义外部资源地址及超文本标记语言等。
开发人员通过设定请求头(httphead)的Content-Type机制,可自定义至少下述三种页面模板文件类型:
(1)nbpf/txtMsg--自定义错误节点:PageAction可进行弹窗处理;
(2)nbpf/locationUrl--自定义外部资源地址:PageAction可跳出当前业务流程并接续其它业务流程;
(3)nbpf/html--大多数页面模板文件的类型,即超文本标记语言(HTML,HyperText Markup Language)。
上述页面模板文件类型例如可被预先配置于流程节点配置信息中,本发明不以此三者为限。
在步骤S306中,根据类型加载页面模板文件的页面模板数据。
承上述,PageAction可通过预设的请求头自定义参数即Content-Type判断接收到的下一投保流程节点对应页面模板文件的类型,并依不同的模板文件类型、以文档对象模型数据的结构在客户端加载其接收到的页面模板数据。
在步骤S308中,在加载的页面模板数据中,渲染处理后的业务领域对象数据。
在加载页面模板数据的同时,PageAction还可以将接收到的已处理业务领域对象数据注入页面模板数据中,则在客户端实现了下一投保流程节点对应页面的加载及渲染。
图5是根据一示例性实施方式示出的再一种页面加载方法的流程图。与图3所示方法20或图4所示方法30的不同之处在于,图5所示的方法40进一步提供了向后加载页面,即页面后退的方法,即上述方法20的一实施例。同样地,如图5所示的页面加载方法例如也可以应用于客户端。
仍以上述互联网在线投保的流程为例,在加载并渲染下一流程节点对应的页面之后,参考图5,页面加载方法20还包括:
在步骤S402中,接收来自下一流程节点对应的页面的页面后退请求。
承上述,当客户端的浏览器停留在已加载后的下一投保流程节点对应的投保页面时,其可通过投保用户点击浏览器等动作调用PageAction提供的另一接口函数goBackAction(),发送页面后退请求并被PageAction接收以触发页面后退流程。由于页面后退请求的发送动作并未使浏览器页面发生切换或跳转,因此开发人员需要于commitAction()接口内,将goBackAction()接口注册在浏览器后退事件中。
在步骤S404中,根据预设的模板自定义参数,判断下一流程节点对应的页面是否可以后退。
PageAction可通过预设的约定类参数例如enableGoBack判断客户端浏览器当前停留的已加载投保页面是否可以后退。如果enableGoBack的参数值为“真”,则判定“页面可以后退”。在一些实施例中,预设的约定类参数还可包括isStartPage,用于判断客户端浏览器当前停留的已加载投保页面是否为所处投保流程的起始页面。如果isStartPage的参数值为“真”,则判定“页面不可后退”。
在步骤S406中,当判定下一流程节点对应的页面可以后退时,在缓存中查找当前页面的文档对象模型数据。
当判定“页面可以后退”时,PageAction可从本地缓存“Local Storage”中查找到已在步骤S202中存储的客户端浏览器当前停留投保页面前一页面的历史DOM数据,也即前一投保页面的页面模板数据以及业务领域对象集数据。
在步骤S408中,删除下一流程节点对应的页面的文档对象模型数据。
在步骤S410中,加载当前页面的文档对象模型数据中的页面模板数据。
在步骤S412中,在加载的页面模板数据中,渲染当前页面的文档对象模型数据中的业务领域对象数据。
上述步骤S408至步骤S412中的“删除DOM-加载模板框架-渲染页面数据”过程与上述方法30的步骤S302、步骤S306及步骤S308中的“删除DOM-加载模板框架-渲染页面数据”过程实质上对应相似,因此在方法40所涉实施方式中不再赘述。
根据一些实施例,本发明提供的页面加载方法能够根据来自当前页面的后退请求,找到在先存储的前一页面文档对象模型数据,能够快速地实现页面后退,同样不需要真正地切换或者跳转页面。
本领域技术人员可以理解实现上述实施方式的全部或部分步骤被实现为由CPU执行的计算机程序。在该计算机程序被CPU执行时,执行本发明提供的上述方法所限定的上述功能。所述的程序可以存储于一种计算机可读存储介质中,该存储介质可以是只读存储器,磁盘或光盘等。
此外,需要注意的是,上述附图仅是根据本发明示例性实施方式的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
下述为本发明装置实施例,可以用于执行本发明方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明方法实施例。
图6是根据一示例性实施方式示出的一种页面加载装置的框图。如图6所示的页面加载装置例如可以插件的形式实现为客户端的web组件。
参考图6,页面加载装置60包括:请求发送模块602、数据接收模块604及页面加载模块606。
其中,请求发送模块602用于根据当前页面的数据处理结果信息,向服务器端发送页面加载请求。
其中页面加载请求包括待处理业务领域对象数据。
在一些实施例中,请求发送模块602可进一步包括异步请求单元,用于以异步请求方式向服务器端发送页面加载请求。
数据接收模块604用于接收服务器端返回的处理后的业务领域对象数据及服务器端基于预定义流程节点配置信息查找到的页面模板文件。
其中页面模板文件与当前页面对应流程节点的下一流程节点相对应。
在一些实施例中,预定义流程节点配置信息可包括至少一个业务流程,每一个业务流程可包括至少一个流程节点及预定义的流程节点的连接关系。
页面加载模块606用于根据页面模板文件及处理后的业务领域对象数据,加载并渲染下一流程节点对应的页面。
在一些实施例中,页面加载装置60还可包括:数据缓存模块608。数据缓存模块608用于在页面加载模块606根据页面模板文件及处理后的业务领域对象数据加载并渲染下一流程节点对应的页面之前,将当前页面的文档对象模型数据存储于缓存中。
其中,文档对象模型数据包括页面模板数据及业务领域对象数据。
承上述,在一些实施例中,页面加载模块606还可进一步包括:第一数据删除单元、模板类型确定单元、第一数据加载单元及第一数据渲染单元。
其中,第一数据删除单元用于删除当前页面的文档对象模型数据。
模板类型确定单元用于根据预设的请求头自定义参数,确定页面模板文件的类型。
其中,页面模板文件的类型例如可包括:自定义错误节点、自定义外部资源地址及超文本标记语言等。
第一数据加载单元用于根据类型加载页面模板文件的页面模板数据。
第一数据渲染单元用于在加载的页面模板数据中,渲染处理后的业务领域对象数据。
在一些实施例中,页面加载装置60还可包括:页面后退模块610。页面后退模块610可进一步包括:后退请求接收单元、后退条件判断单元、历史数据查找单元、第二数据删除单元、第二数据加载单元及第二数据渲染单元。
其中,后退请求接收单元用于接收来自下一流程节点对应的页面的页面后退请求。
后退条件判断单元用于根据预设的模板自定义参数,判断下一流程节点对应的页面是否可以后退。
历史数据查找单元用于当判定下一流程节点对应的页面可以后退时,在缓存中查找当前页面的文档对象模型数据
第二数据删除单元用于删除下一流程节点对应的页面的文档对象模型数据。
第二数据加载单元用于加载当前页面的文档对象模型数据中的页面模板数据。
第二数据渲染单元用于在加载的页面模板数据中,渲染当前页面的文档对象模型数据中的业务领域对象数据。
根据本发明实施方式提供的页面加载装置,基于服务器端预定义的流程节点配置和页面模板,能够依次实现后续流程节点对应页面的快速加载与渲染,而并不实际进行页面切换或者跳转,同时为前期页面开发成本的显著降低、后期系统可维护性的大幅提升以及互联网产品的高速上线提供了便利条件。
另外,根据一些实施例,本发明提供的页面加载装置能够根据来自当前页面的后退请求,找到在先存储的前一页面文档对象模型数据,能够快速地实现页面后退,同样不需要真正地切换或者跳转页面。
需要注意的是,上述附图中所示的框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
图7是根据一示例性实施方式示出的一种电子设备的结构示意图。需要说明的是,图7示出的电子设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图7所示,电子设备700以通用计算机设备的形式表现。电子设备700的组件包括:至少一个中央处理单元(CPU)701,其可以根据存储在只读存储器(ROM)702中的程序代码或者从至少一个存储单元708加载到随机访问存储器(RAM)703中的程序代码而执行各种适当的动作和处理。
特别地,根据本发明的实施例,所述程序代码可以被中央处理单元701执行,使得中央处理单元701执行本说明书上述方法实施例部分中描述的根据本发明各种示例性实施方式的步骤。例如,中央处理单元701可以执行如图2至图5中所示的步骤。
在RAM 703中,还存储有电子设备700操作所需的各种程序和数据。CPU 701、ROM702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
以下部件连接至I/O接口705:包括键盘、鼠标等的输入单元706;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出单元707;包括硬盘等的存储单元708;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信单元709。通信单元709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至I/O接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储单元708。
图8是根据一示例性实施方式示出的一种计算机可读存储介质的示意图。
参考图8所示,描述了根据本发明的实施方式的设置为实现上述方法的程序产品800,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该计算机可读介质实现如图2至图5中所示的功能。
以上具体地示出和描述了本发明的示例性实施方式。应可理解的是,本发明不限于这里描述的详细结构、设置方式或实现方法;相反,本发明意图涵盖包含在所附权利要求的精神和范围内的各种修改和等效设置。
Claims (10)
1.一种页面加载方法,其特征在于,包括:
根据当前页面的数据处理结果信息,向服务器端发送页面加载请求,所述页面加载请求包括待处理业务领域对象数据;
接收所述服务器端返回的处理后的业务领域对象数据及所述服务器端基于预定义流程节点配置信息查找到的页面模板文件,所述页面模板文件与所述当前页面对应流程节点的下一流程节点相对应;以及
根据所述页面模板文件及所述处理后的业务领域对象数据,加载并渲染所述下一流程节点对应的页面。
2.根据权利要求1所述的方法,其特征在于,在根据所述页面模板文件及所述处理后的业务领域对象数据,加载并渲染所述下一流程节点对应的页面之前,所述方法还包括:将所述当前页面的文档对象模型数据存储于缓存中,所述文档对象模型数据包括页面模板数据及业务领域对象数据。
3.根据权利要求2所述的方法,其特征在于,根据所述页面模板文件及所述处理后的业务领域对象数据,加载并渲染所述下一流程节点对应的页面包括:
删除所述当前页面的文档对象模型数据;
根据预设的请求头自定义参数,确定所述页面模板文件的类型;
根据所述类型加载所述页面模板文件的页面模板数据;以及
在加载的所述页面模板数据中,渲染所述处理后的业务领域对象数据。
4.根据权利要求3所述的方法,其特征在于,所述页面模板文件的类型包括:自定义错误节点、自定义外部资源地址及超文本标记语言等。
5.根据权利要求2所述的方法,其特征在于,在加载并渲染所述下一流程节点对应的页面之后,所述方法还包括:
接收来自所述下一流程节点对应的页面的页面后退请求;
根据预设的模板自定义参数,判断所述下一流程节点对应的页面是否可以后退;
当判定所述下一流程节点对应的页面可以后退时,在所述缓存中查找所述当前页面的文档对象模型数据;
删除所述下一流程节点对应的页面的文档对象模型数据;
加载所述当前页面的文档对象模型数据中的页面模板数据;以及
在加载的所述页面模板数据中,渲染所述当前页面的文档对象模型数据中的业务领域对象数据。
6.根据权利要求1所述的方法,其特征在于,所述预定义流程节点配置信息包括至少一个业务流程,每一个所述业务流程包括至少一个流程节点及预定义的所述流程节点的连接关系。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述向服务器端发送页面加载请求包括:以异步请求方式向服务器端发送页面加载请求。
8.一种页面加载装置,其特征在于,包括:
请求发送模块,用于根据当前页面的数据处理结果信息,向服务器端发送页面加载请求,所述页面加载请求包括待处理业务领域对象数据;
数据接收模块,用于接收所述服务器端返回的处理后的业务领域对象数据及所述服务器端基于预定义流程节点配置信息查找到的页面模板文件,所述页面模板文件与所述当前页面对应流程节点的下一流程节点相对应;以及
页面加载模块,用于根据所述页面模板文件及所述处理后的业务领域对象数据,加载并渲染所述下一流程节点对应的页面。
9.一种电子设备,包括:存储器、处理器及存储在所述存储器中并可在所述处理器中运行的可执行指令,其特征在于,所述处理器执行所述可执行指令时实现如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机可执行指令,其特征在于,所述可执行指令被处理器执行时实现如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911092579.8A CN111124528B (zh) | 2019-11-11 | 2019-11-11 | 页面加载方法、装置、电子设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911092579.8A CN111124528B (zh) | 2019-11-11 | 2019-11-11 | 页面加载方法、装置、电子设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111124528A true CN111124528A (zh) | 2020-05-08 |
CN111124528B CN111124528B (zh) | 2023-06-27 |
Family
ID=70495205
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911092579.8A Active CN111124528B (zh) | 2019-11-11 | 2019-11-11 | 页面加载方法、装置、电子设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111124528B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112398941A (zh) * | 2020-11-10 | 2021-02-23 | 北京达佳互联信息技术有限公司 | 一种数据处理方法、装置、电子设备和存储介质 |
CN113765868A (zh) * | 2020-08-17 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 一种业务处理方法和装置 |
CN113791827A (zh) * | 2020-10-14 | 2021-12-14 | 北京京东振世信息技术有限公司 | 页面加载方法、业务处理方法、装置、存储介质与设备 |
Citations (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001069382A1 (en) * | 2000-03-10 | 2001-09-20 | Aether Systems, Inc. | System, method and apparatus for initial configuration of a client device |
US6832351B1 (en) * | 1999-10-01 | 2004-12-14 | Microsoft Corporation | Method and system for previewing and printing customized business forms |
JP2005182742A (ja) * | 2003-12-18 | 2005-07-07 | Korea Electronics Telecommun | 動的負荷分散システム及びその方法 |
CN102325191A (zh) * | 2011-10-08 | 2012-01-18 | 新一站保险代理有限公司 | 一种全自动的页面无刷新处理方法及框架 |
US20130144928A1 (en) * | 2011-12-05 | 2013-06-06 | Microsoft Corporation | Minimal download and simulated page navigation features |
CN103605770A (zh) * | 2013-11-26 | 2014-02-26 | 优视科技有限公司 | 网页模板生成方法和服务器 |
KR101415179B1 (ko) * | 2013-01-29 | 2014-07-04 | 주식회사 이파피루스 | 페이지 로딩 시스템 및 그 방법 |
CN104866489A (zh) * | 2014-02-24 | 2015-08-26 | 赵冰 | 一个将网站选定内容提取、存储并发布的系统 |
CN106970790A (zh) * | 2017-03-09 | 2017-07-21 | 腾讯科技(深圳)有限公司 | 一种应用程序创建的方法、相关设备及系统 |
CN107229665A (zh) * | 2016-03-25 | 2017-10-03 | 阿里巴巴集团控股有限公司 | 一种页面跳转方法及装置 |
CN107391169A (zh) * | 2017-06-09 | 2017-11-24 | 口碑控股有限公司 | 安卓页面的动态更新方法和装置 |
CN107577712A (zh) * | 2017-08-01 | 2018-01-12 | 武汉斗鱼网络科技有限公司 | 一种加载页面的方法、装置及计算机设备 |
CN107766344A (zh) * | 2016-08-15 | 2018-03-06 | 阿里巴巴集团控股有限公司 | 一种模板渲染的方法、装置及浏览器 |
CN108153551A (zh) * | 2017-12-11 | 2018-06-12 | 中国民生银行股份有限公司 | 一种业务流程页面的展现方法和装置 |
CN108829885A (zh) * | 2018-06-27 | 2018-11-16 | 珠海市君天电子科技有限公司 | 页面生成方法、装置、服务器、电子设备及存储介质 |
CN109002338A (zh) * | 2017-06-07 | 2018-12-14 | 阿里巴巴集团控股有限公司 | 页面渲染、页面装修信息处理方法及装置 |
CN109213948A (zh) * | 2018-10-18 | 2019-01-15 | 网宿科技股份有限公司 | 网页加载方法、中间服务器和网页加载系统 |
US20190251143A1 (en) * | 2017-01-20 | 2019-08-15 | Huawei Technologies Co., Ltd. | Web page rendering method and related device |
CN110400196A (zh) * | 2019-06-20 | 2019-11-01 | 北京奇艺世纪科技有限公司 | 一种页面处理方法、装置及计算机可读存储介质 |
-
2019
- 2019-11-11 CN CN201911092579.8A patent/CN111124528B/zh active Active
Patent Citations (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6832351B1 (en) * | 1999-10-01 | 2004-12-14 | Microsoft Corporation | Method and system for previewing and printing customized business forms |
WO2001069382A1 (en) * | 2000-03-10 | 2001-09-20 | Aether Systems, Inc. | System, method and apparatus for initial configuration of a client device |
JP2005182742A (ja) * | 2003-12-18 | 2005-07-07 | Korea Electronics Telecommun | 動的負荷分散システム及びその方法 |
CN102325191A (zh) * | 2011-10-08 | 2012-01-18 | 新一站保险代理有限公司 | 一种全自动的页面无刷新处理方法及框架 |
US20130144928A1 (en) * | 2011-12-05 | 2013-06-06 | Microsoft Corporation | Minimal download and simulated page navigation features |
KR101415179B1 (ko) * | 2013-01-29 | 2014-07-04 | 주식회사 이파피루스 | 페이지 로딩 시스템 및 그 방법 |
CN103605770A (zh) * | 2013-11-26 | 2014-02-26 | 优视科技有限公司 | 网页模板生成方法和服务器 |
CN104866489A (zh) * | 2014-02-24 | 2015-08-26 | 赵冰 | 一个将网站选定内容提取、存储并发布的系统 |
CN107229665A (zh) * | 2016-03-25 | 2017-10-03 | 阿里巴巴集团控股有限公司 | 一种页面跳转方法及装置 |
CN107766344A (zh) * | 2016-08-15 | 2018-03-06 | 阿里巴巴集团控股有限公司 | 一种模板渲染的方法、装置及浏览器 |
US20190251143A1 (en) * | 2017-01-20 | 2019-08-15 | Huawei Technologies Co., Ltd. | Web page rendering method and related device |
CN106970790A (zh) * | 2017-03-09 | 2017-07-21 | 腾讯科技(深圳)有限公司 | 一种应用程序创建的方法、相关设备及系统 |
CN109002338A (zh) * | 2017-06-07 | 2018-12-14 | 阿里巴巴集团控股有限公司 | 页面渲染、页面装修信息处理方法及装置 |
CN107391169A (zh) * | 2017-06-09 | 2017-11-24 | 口碑控股有限公司 | 安卓页面的动态更新方法和装置 |
CN107577712A (zh) * | 2017-08-01 | 2018-01-12 | 武汉斗鱼网络科技有限公司 | 一种加载页面的方法、装置及计算机设备 |
CN108153551A (zh) * | 2017-12-11 | 2018-06-12 | 中国民生银行股份有限公司 | 一种业务流程页面的展现方法和装置 |
CN108829885A (zh) * | 2018-06-27 | 2018-11-16 | 珠海市君天电子科技有限公司 | 页面生成方法、装置、服务器、电子设备及存储介质 |
CN109213948A (zh) * | 2018-10-18 | 2019-01-15 | 网宿科技股份有限公司 | 网页加载方法、中间服务器和网页加载系统 |
CN110400196A (zh) * | 2019-06-20 | 2019-11-01 | 北京奇艺世纪科技有限公司 | 一种页面处理方法、装置及计算机可读存储介质 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113765868A (zh) * | 2020-08-17 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 一种业务处理方法和装置 |
CN113765868B (zh) * | 2020-08-17 | 2023-08-08 | 北京沃东天骏信息技术有限公司 | 一种业务处理方法和装置 |
CN113791827A (zh) * | 2020-10-14 | 2021-12-14 | 北京京东振世信息技术有限公司 | 页面加载方法、业务处理方法、装置、存储介质与设备 |
CN113791827B (zh) * | 2020-10-14 | 2023-11-03 | 北京京东振世信息技术有限公司 | 页面加载方法、业务处理方法、装置、存储介质与设备 |
CN112398941A (zh) * | 2020-11-10 | 2021-02-23 | 北京达佳互联信息技术有限公司 | 一种数据处理方法、装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111124528B (zh) | 2023-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102325191B (zh) | 一种全自动的页面无刷新处理方法及框架 | |
CN111124528B (zh) | 页面加载方法、装置、电子设备及计算机可读存储介质 | |
EP1693765B1 (en) | A data processing system and method | |
CN114048701B (zh) | 网表eco方法、装置、设备及可读存储介质 | |
CN113127347B (zh) | 一种接口测试方法、装置、设备及可读存储介质 | |
CN113032244B (zh) | 接口测试方法、装置、计算机系统和计算机可读存储介质 | |
CN110858172A (zh) | 一种自动化测试代码生成方法和装置 | |
CN111666201A (zh) | 回归测试方法、装置、介质及电子设备 | |
CN111090821A (zh) | 一种实现动态网页的方法、装置、电子设备及存储介质 | |
CN111338928A (zh) | 基于chrome浏览器测试的方法及装置 | |
CN112100086B (zh) | 软件自动化测试方法、装置、设备和计算机可读存储介质 | |
CN112597036B (zh) | 一种通用测试挡板方法及装置 | |
CN112053137A (zh) | 流程预测方法、电子设备和服务器集群 | |
CN113296912A (zh) | 任务处理方法及装置、系统、存储介质、电子设备 | |
CN111949259A (zh) | 风险决策配置方法、系统、电子设备及存储介质 | |
CN110597862A (zh) | 一种基于信息系统的数据录入方法、设备以及系统 | |
CN117474312B (zh) | 可视化业务流编排方法、系统、电子设备及存储介质 | |
CN117032786B (zh) | 基于组件实现业务关联性的方法及系统 | |
CN115422029A (zh) | 接口日志文档生成方法、装置及计算机设备 | |
CN113761857A (zh) | 一种基于表单设计器的表单处理方法及设备 | |
CN117032683A (zh) | 用于基于组件构建业务系统的方法及系统 | |
CN117312713A (zh) | 一种信创环境基于浏览器自动化流程处理的方法和系统 | |
CN113205421A (zh) | 理财产品的核算方法及装置 | |
CN114138673A (zh) | 一种测试数据生成方法、装置、设备及可读存储介质 | |
CN117032786A (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 |