CN112685045A - 页面源文件的处理方法、装置、电子设备以及存储介质 - Google Patents
页面源文件的处理方法、装置、电子设备以及存储介质 Download PDFInfo
- Publication number
- CN112685045A CN112685045A CN202011583019.5A CN202011583019A CN112685045A CN 112685045 A CN112685045 A CN 112685045A CN 202011583019 A CN202011583019 A CN 202011583019A CN 112685045 A CN112685045 A CN 112685045A
- Authority
- CN
- China
- Prior art keywords
- source file
- scope
- page
- logic
- exception
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 35
- 230000002159 abnormal effect Effects 0.000 claims abstract description 185
- 238000000034 method Methods 0.000 claims abstract description 117
- 238000012545 processing Methods 0.000 claims abstract description 109
- 230000006870 function Effects 0.000 claims description 78
- 238000004590 computer program Methods 0.000 claims description 9
- 238000011161 development Methods 0.000 abstract description 13
- 230000005856 abnormality Effects 0.000 description 29
- 238000006243 chemical reaction Methods 0.000 description 29
- 238000012806 monitoring device Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 239000011800 void material Substances 0.000 description 2
- OLDXRTOEUPVZKB-UHFFFAOYSA-N B1CCCC1 Chemical compound B1CCCC1 OLDXRTOEUPVZKB-UHFFFAOYSA-N 0.000 description 1
- 235000017166 Bambusa arundinacea Nutrition 0.000 description 1
- 235000017491 Bambusa tulda Nutrition 0.000 description 1
- 241001330002 Bambuseae Species 0.000 description 1
- 235000015334 Phyllostachys viridis Nutrition 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 239000011425 bamboo Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
Abstract
本公开关于一种页面源文件的处理方法、装置、电子设备以及存储介质,涉及终端技术领域,其中,该方法包括:获取待处理页面的源文件以及源文件中的关键字信息;在关键字信息中存在预设关键字时,获取源文件中预设关键字的作用域;在作用域满足预设的异常捕获配置条件时,采用异常捕获配置文件配置源文件中的作用域,生成配置后的源文件。由此,可以实现在页面的源文件中自动生成异常捕获逻辑,以利用该异常捕获逻辑捕获作用域返回的异常信息,无需开发人员在页面的源文件中手动编写对应的异常捕获逻辑,可以降低开发人员的工作量,同时,还可以提升页面的开发效率。
Description
技术领域
本公开涉及终端技术领域,尤其涉及一种页面源文件的处理方法、装置、电子设备以及存储介质。
背景技术
随着终端技术以及移动互联网技术的不断发展,各种应用(Application,简称APP)如雨后春笋般不断出现,用户可以根据自身需求在终端设备上安装不同类别的APP,例如视频类APP、社交类APP、支付类APP等等。
对于各APP页面,当获取数据的接口因网络原因出错,或者依赖的某个第三方功能函数报错等,则无法初始化数据,此时,需要进行异常报错。相关技术中,通过研发人员手动在各APP页面的源文件中编写异常捕获逻辑(比如try catch函数),来捕获异常信息,并基于该异常信息进行异常报错。
这种方式下,需要人工手动在每个页面的源文件中编写相应的代码,工作量较大。
发明内容
本公开提供一种页面源文件的处理方法、装置、电子设备以及存储介质,以至少解决相关技术中通过研发人员手动在各APP页面中编写异常捕获逻辑,来捕获异常信息,需要人工手动在每个页面的源文件中编写相应的代码,工作量较大的问题。
本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种页面源文件的处理方法,包括:
获取待处理页面的源文件、以及所述源文件中的关键字信息;
在所述关键字信息中存在预设关键字时,获取所述源文件中所述预设关键字的作用域;
在所述作用域满足预设的异常捕获配置条件时,采用异常捕获配置文件配置所述源文件中的所述作用域,生成配置后的源文件。
作为本公开实施例的第一种可能的情况,所述预设关键字为以下关键字中的至少一个:异步操作async关键字、暂停等待await关键字以及异步操作返回promise关键字。
作为本公开实施例的第二种可能的情况,所述获取所述源文件中所述预设关键字的作用域,包括:
将所述源文件中所述预设关键字之后的函数的内容,确定为所述源文件中所述预设关键字的作用域;
或者,
将所述源文件中包含所述预设关键字的函数的内容,确定为所述源文件中所述预设关键字的作用域。
作为本公开实施例的第三种可能的情况,所述异常捕获配置条件为,作用域未包含在异常捕获逻辑中;
所述的方法,还包括:
若所述作用域未包含在所述异常捕获逻辑中,则确定所述作用域满足预设的异常捕获配置条件;
若所述作用域包含在所述异常捕获逻辑中,则确定所述作用域不满足预设的异常捕获配置条件。
作为本公开实施例的第四种可能的情况,所述异常捕获配置文件包括:异常捕获逻辑框架,所述异常捕获逻辑框架包括抓取逻辑;
所述采用异常捕获配置文件配置所述源文件中的所述作用域,生成配置后的源文件,包括:
添加所述作用域到所述异常捕获逻辑框架中抓取逻辑之前的位置,得到异常捕获逻辑方法;
替换所述源文件中的所述作用域为所述异常捕获逻辑方法。
作为本公开实施例的第五种可能的情况,所述抓取逻辑中设置有处理逻辑,所述处理逻辑用于对所述作用域返回的异常信息进行展现或者上报。
作为本公开实施例的第六种可能的情况,所述处理逻辑中设置有格式转换逻辑,所述格式转换逻辑用于在所述作用域返回的异常信息不满足设定格式时,将所述异常信息转换为设定格式的异常信息。
本公开实施例的页面源文件的处理方法,通过获取待处理页面的源文件以及源文件中的关键字信息;在关键字信息中存在预设关键字时,获取源文件中预设关键字的作用域;在作用域满足预设的异常捕获配置条件时,采用异常捕获配置文件配置源文件中的作用域,生成配置后的源文件。由此,可以实现在页面的源文件中自动生成异常捕获逻辑,以利用该异常捕获逻辑捕获作用域返回的异常信息,无需开发人员在页面的源文件中手动编写对应的异常捕获逻辑,可以降低开发人员的工作量,同时,还可以提升页面的开发效率。
根据本公开实施例的第二方面,提供另一种页面源文件的处理方法,包括:
获取待运行的页面源文件,其中,所述页面源文件为采用异常捕获配置文件对初始源文件中预设关键字的作用域进行异常捕获配置后得到的文件;
运行所述页面源文件;
在所述页面源文件的运行过程中,调用所述页面源文件中配置的异常捕获逻辑方法,捕获所述作用域返回的异常信息。
作为本公开实施例的第一种可能的情况,所述预设关键字为以下关键字中的至少一个:异步操作async关键字、暂停等待await关键字以及异步操作返回promise关键字。
作为本公开实施例的第二种可能的情况,所述初始源文件中预设关键字的作用域,为所述初始源文件中所述预设关键字之后的函数的内容、或者为所述初始源文件中包含所述预设关键字的函数的内容。
作为本公开实施例的第三种可能的情况,所述预设关键字的作用域的异常捕获配置条件为,所述预设关键字的作用域未包含在异常捕获逻辑中。
作为本公开实施例的第四种可能的情况,所述异常捕获配置文件包括:异常捕获逻辑框架,所述异常捕获逻辑框架包括抓取逻辑;
所述页面源文件中异常捕获逻辑方法的配置方式为,添加所述预设关键字的作用域到所述异常捕获逻辑框架中抓取逻辑之前的位置,得到异常捕获逻辑方法;替换所述初始源文件中的所述作用域为所述异常捕获逻辑方法。
作为本公开实施例的第五种可能的情况,所述抓取逻辑中设置有处理逻辑;
所述调用所述页面源文件中配置的异常捕获逻辑方法,捕获所述作用域返回的异常信息,包括:
调用所述异常捕获逻辑方法中的抓取逻辑,捕获所述作用域返回的异常信息;
调用所述抓取逻辑中的处理逻辑,在显示界面上展示所述抓取逻辑抓取到的所述异常信息,或者向监控设备上报所述抓取逻辑抓取到的所述异常信息。
作为本公开实施例的第六种可能的情况,所述处理逻辑中设置有格式转换逻辑;
所述调用所述页面源文件中配置的异常捕获逻辑方法,捕获所述作用域返回的异常信息,还包括:
在所述处理逻辑的运行过程中,调用所述处理逻辑中的所述格式转换逻辑,对不满足设定格式的所述异常信息进行格式转换,得到所述设定格式的异常信息。
本公开实施例的页面源文件的处理方法,通过获取待运行的页面源文件,其中,页面源文件为采用异常捕获配置文件对初始源文件中预设关键字的作用域进行异常捕获配置后得到的文件;运行页面源文件;在页面源文件的运行过程中,调用页面源文件中配置的异常捕获逻辑方法,捕获作用域返回的异常信息。由此,无需人员在页面源文件中手动编写对应的异常捕获逻辑,可以降低开发人员的工作量,同时,还可以提升页面的开发效率。并且,自动捕获作用域返回的异常信息,还可以便于开发人员排查异常原因,从而对异常进行处理。
根据本公开实施例的第三方面,提供一种页面源文件的处理装置,包括:
第一获取模块,被配置为执行获取待处理页面的源文件、以及所述源文件中的关键字信息;
第二获取模块,被配置为执行在所述关键字信息中存在预设关键字时,获取所述源文件中所述预设关键字的作用域;
生成模块,被配置为执行在所述作用域满足预设的异常捕获配置条件时,采用异常捕获配置文件配置所述源文件中的所述作用域,生成配置后的源文件。
作为本公开实施例的第一种可能的情况,所述预设关键字为以下关键字中的至少一个:异步操作async关键字、暂停等待await关键字以及异步操作返回promise关键字。
作为本公开实施例的第二种可能的情况,所述第二获取模块,具体被配置为执行,
将所述源文件中所述预设关键字之后的函数的内容,确定为所述源文件中所述预设关键字的作用域;
或者,
将所述源文件中包含所述预设关键字的函数的内容,确定为所述源文件中所述预设关键字的作用域。
作为本公开实施例的第三种可能的情况,所述异常捕获配置条件为,作用域未包含在异常捕获逻辑中;
所述的装置,还包括:
确定模块,被配置为执行在所述作用域未包含在所述异常捕获逻辑中时,确定所述作用域满足预设的异常捕获配置条件;在所述作用域包含在所述异常捕获逻辑中时,确定所述作用域不满足预设的异常捕获配置条件。
作为本公开实施例的第四种可能的情况,所述异常捕获配置文件包括:异常捕获逻辑框架,所述异常捕获逻辑框架包括抓取逻辑;
所述生成模块具体被配置为执行,
添加所述作用域到所述异常捕获逻辑框架中抓取逻辑之前的位置,得到异常捕获逻辑方法;
替换所述源文件中的所述作用域为所述异常捕获逻辑方法。
作为本公开实施例的第五种可能的情况,所述抓取逻辑中设置有处理逻辑,所述处理逻辑用于对所述作用域返回的异常信息进行展现或者上报。
作为本公开实施例的第六种可能的情况,所述处理逻辑中设置有格式转换逻辑,所述格式转换逻辑用于在所述作用域返回的异常信息不满足设定格式时,将所述异常信息转换为设定格式的异常信息。
本公开实施例的页面源文件的处理装置,通过获取待处理页面的源文件以及源文件中的关键字信息;在关键字信息中存在预设关键字时,获取源文件中预设关键字的作用域;在作用域满足预设的异常捕获配置条件时,采用异常捕获配置文件配置源文件中的作用域,生成配置后的源文件。由此,可以实现在页面的源文件中自动生成异常捕获逻辑,以利用该异常捕获逻辑捕获作用域返回的异常信息,无需开发人员在页面的源文件中手动编写对应的异常捕获逻辑,可以降低开发人员的工作量,同时,还可以提升页面的开发效率。
根据本公开实施例的第四方面,提供另一种页面源文件的处理装置,包括:
获取模块,被配置为执行获取待运行的页面源文件,其中,所述页面源文件为采用异常捕获配置文件对初始源文件中预设关键字的作用域进行异常捕获配置后得到的文件;
运行模块,被配置为执行运行所述页面源文件;
处理模块,被配置为执行在所述页面源文件的运行过程中,调用所述页面源文件中配置的异常捕获逻辑方法,捕获所述作用域返回的异常信息。
作为本公开实施例的第一种可能的情况,所述预设关键字为以下关键字中的至少一个:异步操作async关键字、暂停等待await关键字以及异步操作返回promise关键字。
作为本公开实施例的第二种可能的情况,所述初始源文件中预设关键字的作用域,为所述初始源文件中所述预设关键字之后的函数的内容,或者,为所述初始源文件中包含所述预设关键字的函数的内容。
作为本公开实施例的第三种可能的情况,所述预设关键字的作用域的异常捕获配置条件为,所述预设关键字的作用域未包含在异常捕获逻辑中。
作为本公开实施例的第四种可能的情况,所述异常捕获配置文件包括:异常捕获逻辑框架,所述异常捕获逻辑框架包括抓取逻辑;
所述页面源文件中异常捕获逻辑方法的配置方式为,添加所述预设关键字的作用域到所述异常捕获逻辑框架中抓取逻辑之前的位置,得到异常捕获逻辑方法;替换所述初始源文件中的所述作用域为所述异常捕获逻辑方法。
作为本公开实施例的第五种可能的情况,所述抓取逻辑中设置有处理逻辑;
所述处理模块,具体被配置为执行:
调用所述异常捕获逻辑方法中的抓取逻辑,捕获所述作用域返回的异常信息;
调用所述抓取逻辑中的处理逻辑,在显示界面上展示所述抓取逻辑抓取到的所述异常信息,或者向监控设备上报所述抓取逻辑抓取到的所述异常信息。
作为本公开实施例的第六种可能的情况,所述处理逻辑中设置有格式转换逻辑;
所述处理模块,具体还被配置为执行:
在所述处理逻辑的运行过程中,调用所述处理逻辑中的所述格式转换逻辑,对不满足设定格式的所述异常信息进行格式转换,得到所述设定格式的异常信息。
本公开实施例的页面源文件的处理装置,通过获取待运行的页面源文件,其中,页面源文件为采用异常捕获配置文件对初始源文件中预设关键字的作用域进行异常捕获配置后得到的文件;运行页面源文件;在页面源文件的运行过程中,调用页面源文件中配置的异常捕获逻辑方法,捕获作用域返回的异常信息。由此,无需人员在页面源文件中手动编写对应的异常捕获逻辑,可以降低开发人员的工作量,同时,还可以提升页面的开发效率。并且,自动捕获作用域返回的异常信息,还可以便于开发人员排查异常原因,从而对异常进行处理。
根据本公开实施例的第五方面,提供一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现本公开第一方面任一实施例提出的页面源文件的处理方法,或者,实现本公开第二方面任一实施例提出的页面源文件的处理方法。
根据本公开实施例的第六方面,提供一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行本公开第一方面任一实施例提出的页面源文件的处理方法,或者,实现本公开第二方面任一实施例提出的页面源文件的处理方法。
根据本公开实施例的第七方面,提供一种计算机程序产品,包括计算机程序,该计算机程序由电子设备的处理器执行时,使得电子设备能够执行本公开第一方面任一实施例提出的页面源文件的处理方法,或者,执行本公开第二方面任一实施例提出的页面源文件的处理方法。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例一所示出的页面源文件的处理方法的流程图;
图2是根据一示例性实施例二所示出的页面源文件的处理方法的流程图;
图3是根据一示例性实施例三所示出的页面源文件的处理方法的流程图;
图4是根据一示例性实施例四所示出的页面源文件的处理方法的流程图;
图5是根据一示例性实施例五所示出的页面源文件的处理方法的流程图;
图6是根据一示例性实施例六所示出的页面源文件的处理装置的框图;
图7是根据一示例性实施例七所示出的页面源文件的处理装置的框图;
图8是根据一示例性实施例示出的一种用于页面源文件的处理方法的电子设备的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例一所示出的页面源文件的处理方法的流程图。
本公开实施例以该页面源文件的处理方法被配置于页面源文件的处理装置中来举例说明,该页面源文件的处理装置可以应用于任一电子设备中,以使该电子设备可以执行页面源文件的处理功能。
其中,电子设备可以为任一具有计算能力的设备,例如可以为个人电脑(PersonalComputer,简称PC)、移动终端等,移动终端例如可以为手机、平板电脑、个人数字助理、穿戴式设备、车载设备等具有各种操作系统、触摸屏和/或显示屏的硬件设备。
如图1所示,页面源文件的处理方法可以包括以下步骤S101-S104。
在步骤S101中,获取待处理页面的源文件、以及源文件中的关键字信息。
在本公开实施例中,待处理页面的源文件可以为开发人员开发的待处理页面对应的运行程序。其中,源文件可以由开发人员提供,或者,源文件也可以由其他设备发送的,或者,源文件也可以为本地预先存储的,本公开对此并不作限制。
在本公开实施例中,关键字可以为源文件中预先定义的标识符、或变量等。比如当源文件为C语言编写时,关键字可以包括:auto、break、case、char、const、continue、default、do、double、else、enum、extern、float、for、goto、if、int、sizeof、static、struct、switch、typedef、void、volatile、while等关键字,或者当源文件为Java语言编写时,关键字可以包括:string、abstract、assert、boolean、break、byte、case、catch、char、class、const、continue、default、do、double、else、finally、void、throw、while等关键字。应当理解的是,当源文件的编写语言不同时,关键字可以相同也可以不同。
在本公开实施例中,在获取到待处理页面的源文件后,可以识别源文件中的关键字,得到关键字信息。
在步骤S102中,在关键字信息中存在预设关键字时,获取源文件中预设关键字的作用域。
在本公开实施例中,预设关键字为预先设定的关键字,该预设关键字可以为异步操作async关键字、暂停等待await关键字、异步操作返回promise关键字中的至少一个。
在本公开实施例中,可以将关键字信息中的各关键字,逐个与上述预设关键字进行匹配,以确定关键字信息是否存在预设关键字,在关键字信息中存在预设关键字时,可以获取源文件中该预设关键字的作用域。
在本公开实施例的一种可能的实现方式中,可以将源文件中预设关键字之后的函数的内容,作为源文件中预设关键字的作用域。
在本公开实施例的另一种可能的实现方式中,可以将源文件中包含预设关键字的函数的内容,作为源文件中预设关键字的作用域。
由此,通过至少一种方式,确定预设关键字的作用域,可以提升该方法的适用性。
在步骤S103中,在作用域满足预设的异常捕获配置条件时,采用异常捕获配置文件配置源文件中的作用域,生成配置后的源文件。
在本公开实施例中,预设的异常捕获配置条件为预先设置的,比如,异常捕获配置条件可以为作用域未包含在异常捕获逻辑中。其中,异常捕获逻辑例如可以为try catch函数。
在本公开实施例中,异常捕获配置文件为预先设置的,例如,当异常捕获逻辑为try catch函数时,异常捕获配置文件的程序代码可以如下所示:
try
{
<可能出现错误的代码>
}
catch
{
<处理异常的代码>
}
在本公开实施例中,可以将预设关键字的作用域与预设的异常捕获配置条件进行匹配,以确定上述预设关键字的作用域是否满足异常捕获配置条件。比如,异常捕获配置条件为作用域未包含在异常捕获逻辑中,作用域是否包含在异常捕获逻辑的一个实现方式为:判断预设关键字的作用域是否包含在异常捕获逻辑中,若预设关键字的作用域未包含在异常捕获逻辑中,则确定预设关键字的作用域满足预设的异常捕获配置条件,若预设关键字的作用域包含在异常捕获逻辑中,则确定预设关键字的作用域不满足预设的异常捕获配置条件。由此,可以准确识别作用域是否满足预设的异常捕获配置条件。
作为一种示例,异常捕获逻辑为try catch函数,判断预设关键字的作用域是否包含在try catch函数中,若预设关键字的作用域包含在try catch函数中,则确定预设关键字的作用域不满足预设的异常捕获配置条件,若预设关键字的作用域未包含在try catch函数中,则确定预设关键字的作用域满足预设的异常捕获配置条件。
在本公开实施例中,在预设关键字的作用域满足预设的异常捕获配置条件时,可以采用异常捕获配置文件,配置源文件中的作用域,生成配置后的源文件。例如,可以将预设关键字的作用域添加至上述异常捕获配置文件的程序代码中<可能出现错误的代码>的位置,而后利用注入作用域的异常捕获配置文件的程序代码,替换源文件中的作用域,生成配置后的源文件。
由此,可以实现在页面的源文件中自动生成异常捕获逻辑,以利用该异常捕获逻辑捕获作用域返回的异常信息,无需开发人员在页面的源文件中手动编写对应的异常捕获逻辑,可以降低开发人员的工作量,同时,还可以提升页面的开发效率。
本公开实施例的页面原文件的处理方法,通过获取待处理页面的源文件以及源文件中的关键字信息;在关键字信息中存在预设关键字时,获取源文件中预设关键字的作用域;在作用域满足预设的异常捕获配置条件时,采用异常捕获配置文件配置源文件中的作用域,生成配置后的源文件。由此,可以实现在页面的源文件中自动生成异常捕获逻辑,以利用该异常捕获逻辑捕获作用域返回的异常信息,无需开发人员在页面的源文件中手动编写对应的异常捕获逻辑,可以降低开发人员的工作量,同时,还可以提升页面的开发效率。
在本公开实施例的一种可能的实现方式中,异常捕获配置文件可以包括异常捕获逻辑框架,该异常捕获逻辑框架中可以包括抓取逻辑,在预设关键字的作用域满足预设的异常捕获配置条件时,可以将作用域添加到异常捕获逻辑框架中抓取逻辑之前的位置,得到异常捕获逻辑方法,将源文件中的作用域,替换为异常捕获逻辑方法,以生成配置后的源文件。
下面结合实施例二,对上述过程进行详细说明。
图2是根据一示例性实施例二所示出的页面源文件的处理方法的流程图。
如图2所示,该页面源文件的处理方法可以包括以下步骤S201-S205。
在步骤S201中,获取待处理页面的源文件、以及源文件中的关键字信息。
在步骤S202中,在关键字信息中存在预设关键字时,获取源文件中预设关键字的作用域。
步骤S201至S202的执行过程可以参见上述实施例的执行过程,在此不做赘述。
在步骤S203中,判断作用域是否满足预设的异常捕获配置条件。
在本公开实施例中,异常捕获配置文件可以包括异常捕获逻辑框架,该所述异常捕获逻辑框架可以包括抓取逻辑。例如,异常捕获逻辑框架可以为如下所示:
try
{
<可能出现错误的代码>
}
catch
{
<处理异常的代码>
}
此时,抓取逻辑即为catch函数。
在本公开实施例的一种可能的实现方式中,当异常捕获配置条件为作用域未包含在异常捕获逻辑中时,若预设关键字为async关键字和/或await关键字,则可以判断作用域是否包含在异常捕获逻辑中,若作用域包含在异常捕获逻辑中,则确定作用域不满足预设的异常捕获配置条件,而若作用域未包含在异常捕获逻辑中,则确定作用域满足预设的异常捕获配置条件。
作为一种示例,以异常捕获逻辑为try catch函数示例,预设关键字为async关键字和/或await关键字,若作用域未包含在try catch函数内,或者,try catch函数内未包含async关键字和/或await关键字,则确定作用域满足预设的异常捕获配置条件。
在本公开实施例的另一种可能的实现方式中,异常捕获配置条件为作用域未包含在异常捕获逻辑中,预设关键字为promise关键字,判断作用域之后的函数是否为异常捕获逻辑中的抓取逻辑,若作用域之后的函数是异常捕获逻辑中的抓取逻辑,则确定作用域不满足预设的异常捕获配置条件,而若作用域之后的函数不是异常捕获逻辑中的抓取逻辑,则确定作用域满足预设的异常捕获配置条件。
作为一种示例,以异常捕获逻辑为try catch函数示例,抓取逻辑可以为catch函数,当预设关键字为promise关键字时,若作用域后的函数不是catch函数,或者promise关键字后的函数不是catch函数,则确定作用域满足预设的异常捕获配置条件。
在本公开实施例中,当确定作用域满足预设的异常捕获配置条件时,可以执行步骤S204。而当确定作用域不满足预设的异常捕获配置条件时,此时,源文件中包含了异常捕获逻辑,可以利用源文件中的异常捕获逻辑捕获作用域返回的异常信息,因此,可以不对该源文件进行处理。
在步骤S204中,在作用域满足预设的异常捕获配置条件时,添加作用域到异常捕获逻辑框架中抓取逻辑之前的位置,得到异常捕获逻辑方法。
在本公开实施例中,在作用域满足预设的异常捕获配置条件时,可以添加作用域到异常捕获逻辑框架中抓取逻辑,得到异常捕获逻辑方法。例如,当异常捕获逻辑为trycatch函数时,抓取逻辑可以为catch函数,可以添加作用域到上述步骤S203中的异常捕获逻辑框架中<可能出现错误的代码>的位置,得到异常捕获逻辑方法。
在步骤S205中,替换源文件中的作用域为异常捕获逻辑方法,生成配置后的源文件。
在本公开实施例中,可以替换源文件中的作用域为异常捕获逻辑方法,得到配置后的源文件,从而可以由配置后的源文件中的异常捕获逻辑方法,自动捕获作用域返回的异常信息,从而可以便于开发人员排查异常原因。
本公开实施例的页面源文件的处理方法,通过添加作用域到异常捕获逻辑框架中抓取逻辑之前的位置,得到异常捕获逻辑方法,替换源文件中的作用域为异常捕获逻辑方法。由此,可以实现在源文件中自动生成异常捕获逻辑方法,以利用该异常捕获逻辑方法,捕获作用域返回的异常信息,从而可以便于开发人员排查异常原因,并且,无需开发人员在页面的源文件中手动编写对应的异常捕获逻辑,可以降低开发人员的工作量,同时,还可以提升页面的开发效率。
在本公开实施例的一种可能的实现方式中,异常捕获逻辑框架中的抓取逻辑中,可以设置有处理逻辑,该处理逻辑用于对作用域返回的异常信息进行展现或者上报。例如,可以在显示界面上展示异常信息,以使用户直观化地获知异常信息,或者,还可以向监控设备上报抓取逻辑抓取到的异常信息,由此,可以便于开发人员排查异常原因,从而对该异常进行处理。
例如,异常捕获逻辑为try catch函数,抓取逻辑可以为catch函数,处理逻辑可以为fn函数。
在本公开实施例中,可以调用抓取逻辑,捕获作用域返回的异常信息,当抓取逻辑捕获到作用域返回的异常信息后,该抓取逻辑可以调用处理逻辑,异常信息传入该处理逻辑后,可由处理逻辑对上述异常信息进行展现或者上报。
举例而言,该异常信息的格式可以为设定格式,例如{errCode:XXX,errMsg:XXX},其中,errMsg,表示用于在显示界面上展示的提示信息,errCode,表示用于帮助开发人员定位问题的状态码,从而处理逻辑可以在显示界面上展示errMsg对应的提示信息,并向监控设备上报errCode对应的状态码。例如,处理逻辑可以通过弹窗形式,在显示界面上展示errMsg对应的提示信息,并且,处理逻辑还可以向监控设备上报携带有errCode的错误信息。
作为一种示例,当应用于下单场景时,可以弹窗提示超时异常、支付失败异常、库存不足异常等提示信息。
在本公开实施例的一种可能的实现方式中,处理逻辑中还可以设置有格式转换逻辑,该格式转换逻辑,用于在作用域返回的异常信息不满足设定格式时,将异常信息转换为设定格式的异常信息。
在本公开实施例中,处理逻辑可以对异常信息的格式进行判断,确定该异常信息的格式是否符合设定格式,例如确定该异常信息的格式是否符合{errCode:XXX,errMsg:XXX},若异常信息的格式符合设定格式,则可以对异常信息进行展现或者上报,比如,在显示界面上展示errMsg对应的提示信息,向监控设备上报errCode对应的状态码,以供开发人员排查异常原因。若异常信息的格式不符合设定格式,则通过调用格式转换逻辑,将异常信息转换为设定格式的异常信息,例如,格式转换逻辑可以将异常信息转换为字符串,并将字符串进行格式转换。由此,可以得到统一格式的异常信息,一方面,可以便于用户直观化地获知异常信息,另一方面还可以便于开发人员排查异常原因。
举例而言,对于无法预知的异常,抓取逻辑捕获到的异常信息的格式不符合设定格式,是一个错误(Error)类型的异常信息,可以调用格式转换逻辑可以将异常信息转换为字符串,并将字符串转换为设定格式,以用于统一的弹窗提示和日志上报,可以实现异常的统一处理。
上述为源文件的配置过程,下面将对配置后的文件进行运行处理,以捕获作用域返回的异常信息并进行展现或者上报的过程进程详细说明。
图3是根据一示例性实施例三所示出的页面源文件的处理方法的流程图。
如图3所示,该页面源文件的处理方法可以包括以下步骤S301-S303。
在步骤S301中,获取待运行的页面源文件,其中,页面源文件为采用异常捕获配置文件对初始源文件中预设关键字的作用域进行异常捕获配置后得到的文件。
在本公开实施例中,预设关键字为预先设定的关键字,该预设关键字可以为异步操作async关键字、暂停等待await关键字、异步操作返回promise关键字中的至少一个。
在本公开实施例中,异常捕获配置文件为预先设置的。
在本公开实施例中,获取初始源文件,判断初始源文件中的关键字信息中是否存在预设关键字,在关键字信息中存在预设关键字时,则获取初始源文件中预设关键字的作用域。
在本公开实施例的一种可能的实现方式中,可以将初始源文件中预设关键字之后的函数的内容,作为初始源文件中预设关键字的作用域。
在本公开实施例的另一种可能的实现方式中,可以将初始源文件中包含预设关键字的函数的内容,作为初始源文件中预设关键字的作用域。
由此,通过至少一种方式,确定初始源文件中预设关键字的作用域,可以提升该方法的适用性。
在本公开实施例中,在确定预设关键字的作用域后,可以判断作用域是否满足预设的异常捕获配置条件,其中,预设的异常捕获配置条件为预先设置的,比如,异常捕获配置条件可以为作用域未包含在异常捕获逻辑中,异常捕获逻辑例如可以为try catch函数。
在本公开实施例中,可以将预设关键字的作用域与预设的异常捕获配置条件进行匹配,以确定上述预设关键字的作用域是否满足异常捕获配置条件。比如,异常捕获配置条件为作用域未包含在异常捕获逻辑中,判断预设关键字的作用域是否包含在异常捕获逻辑中,若预设关键字的作用域未包含在异常捕获逻辑中,则确定预设关键字的作用域满足预设的异常捕获配置条件,若预设关键字的作用域包含在异常捕获逻辑中,则确定预设关键字的作用域不满足预设的异常捕获配置条件。
作为一种示例,异常捕获逻辑为try catch函数,判断预设关键字的作用域是否包含在try catch函数中,若预设关键字的作用域包含在try catch函数中,则确定预设关键字的作用域不满足预设的异常捕获配置条件,若预设关键字的作用域未包含在try catch函数中,则确定预设关键字的作用域满足预设的异常捕获配置条件。
在本公开实施例中,在预设关键字的作用域满足预设的异常捕获配置条件时,可以采用异常捕获配置文件,配置初始源文件中的作用域,生成配置后的页面源文件。
例如,当异常捕获逻辑为try catch函数时,异常捕获配置文件的程序代码可以如下所示:
try
{
<可能出现错误的代码>
}
catch
{
<处理异常的代码>
}
可以将预设关键字的作用域添加至上述异常捕获配置文件的程序代码中<可能出现错误的代码>的位置,而后利用注入作用域的异常捕获配置文件的程序代码,替换初始源文件中的作用域,生成配置后的页面源文件。
在步骤S302中,运行页面源文件。
在步骤S303中,在页面源文件的运行过程中,调用页面源文件中配置的异常捕获逻辑方法,捕获作用域返回的异常信息。
在本公开实施例中,运行页面源文件,在页面源文件的运行过程中,可以调用页面源文件中配置的异常捕获逻辑方法,捕获作用域返回的异常信息。
本公开实施例的页面源文件的处理方法,通过获取待运行的页面源文件,其中,页面源文件为采用异常捕获配置文件对初始源文件中预设关键字的作用域进行异常捕获配置后得到的文件;运行页面源文件;在页面源文件的运行过程中,调用页面源文件中配置的异常捕获逻辑方法,捕获作用域返回的异常信息。由此,无需人员在页面源文件中手动编写对应的异常捕获逻辑,可以降低开发人员的工作量,同时,还可以提升页面的开发效率。并且,自动捕获作用域返回的异常信息,还可以便于开发人员排查异常原因,从而对异常进行处理。
在本公开实施例的一种可能的实现方式中,异常捕获配置条件为作用域未包含在异常捕获逻辑中,预设关键字为async关键字和/或await关键字,则可以判断作用域是否包含在异常捕获逻辑中,若作用域包含在异常捕获逻辑中,则确定作用域不满足预设的异常捕获配置条件,而若作用域未包含在异常捕获逻辑中,则确定作用域满足预设的异常捕获配置条件。
作为一种示例,以异常捕获逻辑为try catch函数示例,预设关键字为async关键字和/或await关键字,若作用域未包含在try catch函数内,或者,try catch函数内未包含async关键字和/或await关键字,则确定作用域满足预设的异常捕获配置条件。
在本公开实施例的另一种可能的实现方式中,异常捕获配置条件为作用域未包含在异常捕获逻辑中,预设关键字为promise关键字,则可以判断作用域之后的函数是否为异常捕获逻辑中的抓取逻辑,若作用域之后的函数是异常捕获逻辑中的抓取逻辑,则确定作用域不满足预设的异常捕获配置条件,而若作用域之后的函数不是异常捕获逻辑中的抓取逻辑,则确定作用域满足预设的异常捕获配置条件。
作为一种示例,以异常捕获逻辑为try catch函数示例,抓取逻辑可以为catch函数,预设关键字为promise关键字,若作用域后的函数不是catch函数,或者promise关键字后的函数不是catch函数,则确定作用域满足预设的异常捕获配置条件。
在本公开实施例中,当确定作用域不满足预设的异常捕获配置条件时,此时,初始源文件中包含了异常捕获逻辑,可以直接运行该初始源文件,以利用初始源文件中的异常捕获逻辑捕获作用域返回的异常信息。
在本公开实施例的一种可能的实现方式中,异常捕获配置文件可以包括异常捕获逻辑框架,该异常捕获逻辑框架中可以包括抓取逻辑,在预设关键字的作用域满足预设的异常捕获配置条件时,可以将作用域添加到异常捕获逻辑框架中抓取逻辑之前的位置,得到异常捕获逻辑方法,将初始源文件中的作用域,替换为异常捕获逻辑方法,以生成配置后的页面源文件。
在本公开实施例中,在作用域满足预设的异常捕获配置条件时,可以添加作用域到异常捕获逻辑框架中抓取逻辑,得到异常捕获逻辑方法,并替换源文件中的作用域为异常捕获逻辑方法,得到配置后的源文件,从而可以由配置后的源文件中的异常捕获逻辑方法,自动捕获作用域返回的异常信息,以便于开发人员排查异常原因。
例如,异常捕获逻辑为try catch函数,抓取逻辑为catch函数,将作用域添加至步骤S301中try catch函数框架中<可能出现错误的代码>的位置,得到异常捕获逻辑方法,并利用该异常捕获逻辑方法,替换初始源文件中的作用域,得到页面源文件,在运行页面源文件时,可以由该异常捕获逻辑方法,捕获作用域返回的异常信息。
由此,可以实现在页面源文件中自动生成异常捕获逻辑方法,在运行该页面源文件时,调用该异常捕获逻辑方法,捕获作用域返回的异常信息,从而可以便于开发人员排查异常原因,并且,无需开发人员在页面源文件中手动编写对应的异常捕获逻辑,可以降低开发人员的工作量,同时,还可以提升页面的开发效率。
在本公开实施例的一种可能的实现方式中,异常捕获逻辑框架中的抓取逻辑中,可以设置有处理逻辑,可以调用处理逻辑,将作用域返回的异常信息进行展现或者上报。下面结合实施例四,对上述过程进行详细说明。
图4是根据一示例性实施例四所示出的页面源文件的处理方法的流程图。
如图4所示,该页面源文件的处理方法可以包括以下步骤S401-S404。
在步骤S401中,获取待运行的页面源文件,其中,页面源文件为采用异常捕获配置文件对初始源文件中预设关键字的作用域进行异常捕获配置后得到的文件。
在步骤S402中,运行页面源文件。
步骤S401至S402的执行过程可以参见上述实施例的执行过程,在此不做赘述。
在步骤S403中,在页面源文件的运行过程中,调用页面源文件中配置的异常捕获逻辑方法中的抓取逻辑,捕获作用域返回的异常信息。
例如,异常捕获逻辑为try catch函数,抓取逻辑为catch函数,处理逻辑为fn函数。
在步骤S404中,调用抓取逻辑中的处理逻辑,在显示界面上展示抓取逻辑抓取到的异常信息,或者向监控设备上报抓取逻辑抓取到的异常信息。
在本公开实施例中,在页面源文件的运行过程中,可以调用抓取逻辑,捕获作用域返回的异常信息,在抓取逻辑的运行过程中,可以调用抓取逻辑中的处理逻辑,在显示界面上展示抓取逻辑抓取到的异常信息,或者向监控设备上报抓取逻辑抓取到的异常信息,以使开发人员排查异常。
举例而言,抓取逻辑捕获的异常信息的格式可以为设定格式,例如{errCode:XXX,errMsg:XXX},其中,errMsg,表示用于在显示界面上展示的提示信息,errCode,表示用于帮助开发人员定位问题的状态码,从而处理逻辑可以在显示界面上展示errMsg对应的提示信息,并向监控设备上报errCode对应的状态码。例如,处理逻辑可以通过弹窗形式,在显示界面上展示errMsg对应的提示信息,并且,处理逻辑还可以向监控设备上报携带有errCode的错误信息。
作为一种示例,当应用于下单场景时,可以弹窗提示超时异常、支付失败异常、库存不足异常等提示信息。
本公开实施例的页面源文件的处理方法,通过调用异常捕获逻辑方法中的抓取逻辑,捕获作用域返回的异常信息;调用抓取逻辑中的处理逻辑,在显示界面上展示抓取逻辑抓取到的异常信息,或者向监控设备上报抓取逻辑抓取到的异常信息。由此,可以自动捕获作用域返回的异常信息,并将异常信息进行展现或者上报,可以便于开发人员排查异常原因,从而对异常进行处理。
在本公开实施例的一种可能的实现方式中,处理逻辑中还可以设置有格式转换逻辑,该格式转换逻辑,用于在作用域返回的异常信息不满足设定格式时,将异常信息转换为设定格式的异常信息。
在本公开实施例中,可以在处理逻辑的运行过程中,调用处理逻辑中的格式转换逻辑,对不满足设定格式的异常信息进行格式转换,得到设定格式的异常信息,以便处理逻辑将设定格式的异常信息展现在显示界面上,或者将设定格式的异常信息上报至监控设备,以使开发人员排查异常原因。
在本公开实施例中,处理逻辑可以对异常信息的格式进行判断,确定该异常信息的格式是否符合设定格式,例如确定该异常信息的格式是否符合{errCode:XXX,errMsg:XXX},若异常信息的格式符合设定格式,则可以对异常信息进行展现或者上报,比如,在显示界面上展示errMsg对应的提示信息,向监控设备上报errCode对应的状态码,以供开发人员排查异常原因。若异常信息的格式不符合设定格式,则通过调用格式转换逻辑,将异常信息转换为设定格式的异常信息,例如,格式转换逻辑可以将异常信息转换为字符串,并将字符串进行格式转换。由此,可以得到统一格式的异常信息,一方面,可以便于用户直观化地获知异常信息,另一方面还可以便于开发人员排查异常原因。
举例而言,对于无法预知的异常,抓取逻辑捕获到的异常信息的格式不符合设定格式,是一个错误(Error)类型的异常信息,可以调用格式转换逻辑可以将异常信息转换为字符串,并将字符串转换为设定格式,以用于统一的弹窗提示和日志上报,可以实现异常的统一处理。
作为一种应用场景,参见图5,图5是根据一示例性实施例五所示出的页面源文件的处理方法的流程图。在源文件的编译阶段,可以通过async关键字、await关键字、promise关键字,识别出源文件中需要进行异常处理的代码,本公开中记为预设关键字的作用域,例如,async关键字和/或await关键字未包含在try catch函数内,promise关键字后的函数不是catch函数。
通过改写预设关键字的作用域,将上述作用域加入try catch函数框架中,并在catch函数中注册错误处理函数fn,由fn对作用域返回的异常信息进行展现或者上报,并判断异常信息是否符合设定格式,若是,则根据异常信息向用户进行友好提示,并将上述异常信息进行上报,以使开发人员排查异常原因,若否,则调用格式转换函数将异常信息进行格式转换,转换为设定格式的异常信息。
进一步地,可以按照设定的数据接口,输出对应的异常信息,比如应用于下单场景时,可以输出超时异常、支付失败异常、库存不足异常等等。
由此,在新开发页面时,通过在异常捕获逻辑框架中自动注入预设关键字的作用域,来捕获异常信息,开发人员可以无需考虑弹窗提示、错误收集等问题,即无需考虑错误状态下的页面展现及上报,能够保证一致的容错体验。
与上述图1至图2实施例提供的页面源文件的处理方法相对应,本公开还提供一种页面源文件的处理装置,由于本公开实施例提供的页面源文件的处理装置与上述图1至图2实施例提供的页面源文件的处理方法相对应,因此在页面源文件的处理方法的实施方式也适用于本公开实施例提供的页面源文件的处理装置,在本公开实施例中不再详细描述。
图6是根据一示例性实施例六所示出的页面源文件的处理装置的框图。
参照图6,该页面源文件的处理装置100,可以包括:第一获取模块110、第二获取模块120以及生成模块130。
其中,第一获取模块110,被配置为执行获取待处理页面的源文件、以及源文件中的关键字信息。
第二获取模块120,被配置为执行在关键字信息中存在预设关键字时,获取源文件中预设关键字的作用域。
生成模块130,被配置为执行在作用域满足预设的异常捕获配置条件时,采用异常捕获配置文件配置源文件中的作用域,生成配置后的源文件。
在本公开实施例的一种可能的实现形式中,预设关键字为以下关键字中的至少一个:异步操作async关键字、暂停等待await关键字以及异步操作返回promise关键字。
在本公开实施例的一种可能的实现形式中,第二获取模块120,具体被配置为执行,将源文件中预设关键字之后的函数的内容,确定为源文件中预设关键字的作用域;或者,将源文件中包含预设关键字的函数的内容,确定为源文件中预设关键字的作用域。
在本公开实施例的一种可能的实现形式中,异常捕获配置条件为,作用域未包含在异常捕获逻辑中;该页面源文件的处理装置100还可以包括:
确定模块,被配置为执行在作用域未包含在异常捕获逻辑中时,确定作用域满足预设的异常捕获配置条件;在作用域包含在异常捕获逻辑中时,确定作用域不满足预设的异常捕获配置条件。
在本公开实施例的一种可能的实现形式中,异常捕获配置文件包括:异常捕获逻辑框架,异常捕获逻辑框架包括抓取逻辑;生成模块130具体被配置为执行,添加作用域到异常捕获逻辑框架中抓取逻辑之前的位置,得到异常捕获逻辑方法;替换源文件中的作用域为异常捕获逻辑方法。
在本公开实施例的一种可能的实现形式中,抓取逻辑中设置有处理逻辑,处理逻辑用于对作用域返回的异常信息进行展现或者上报。
在本公开实施例的一种可能的实现形式中,处理逻辑中设置有格式转换逻辑,格式转换逻辑用于在作用域返回的异常信息不满足设定格式时,将异常信息转换为设定格式的异常信息。
本公开实施例的页面源文件的处理装置,通过获取待处理页面的源文件以及源文件中的关键字信息;在关键字信息中存在预设关键字时,获取源文件中预设关键字的作用域;在作用域满足预设的异常捕获配置条件时,采用异常捕获配置文件配置源文件中的作用域,生成配置后的源文件。由此,可以实现在页面的源文件中自动生成异常捕获逻辑,以利用该异常捕获逻辑捕获作用域返回的异常信息,无需开发人员在页面的源文件中手动编写对应的异常捕获逻辑,可以降低开发人员的工作量,同时,还可以提升页面的开发效率。
与上述图3至图4实施例提供的页面源文件的处理方法相对应,本公开还提供一种页面源文件的处理装置,由于本公开实施例提供的页面源文件的处理装置与上述图3至图4实施例提供的页面源文件的处理方法相对应,因此在页面源文件的处理方法的实施方式也适用于本公开实施例提供的页面源文件的处理装置,在本公开实施例中不再详细描述。
图7是根据一示例性实施例七所示出的页面源文件的处理装置的框图。
参照图7,该页面源文件的处理装置200,可以包括:获取模块210、运行、模块220以及处理模块230。
其中,获取模块210,被配置为执行获取待运行的页面源文件,其中,页面源文件为采用异常捕获配置文件对初始源文件中预设关键字的作用域进行异常捕获配置后得到的文件。
运行模块220,被配置为执行运行页面源文件。
处理模块230,被配置为执行在页面源文件的运行过程中,调用页面源文件中配置的异常捕获逻辑方法,捕获作用域返回的异常信息。
在本公开实施例的一种可能的实现形式中,预设关键字为以下关键字中的至少一个:异步操作async关键字、暂停等待await关键字以及异步操作返回promise关键字。
在本公开实施例的一种可能的实现形式中,初始源文件中预设关键字的作用域,为初始源文件中预设关键字之后的函数的内容、或者为初始源文件中包含预设关键字的函数的内容。
在本公开实施例的一种可能的实现形式中,预设关键字的作用域的异常捕获配置条件为,预设关键字的作用域未包含在异常捕获逻辑中。
在本公开实施例的一种可能的实现形式中,异常捕获配置文件包括:异常捕获逻辑框架,异常捕获逻辑框架包括抓取逻辑;页面源文件中异常捕获逻辑方法的配置方式为,添加预设关键字的作用域到异常捕获逻辑框架中抓取逻辑之前的位置,得到异常捕获逻辑方法;替换初始源文件中的作用域为异常捕获逻辑方法。
在本公开实施例的一种可能的实现形式中,抓取逻辑中设置有处理逻辑;处理模块230,具体被配置为执行:调用异常捕获逻辑方法中的抓取逻辑,捕获作用域返回的异常信息;调用抓取逻辑中的处理逻辑,在显示界面上展示抓取逻辑抓取到的异常信息,或者向监控设备上报抓取逻辑抓取到的异常信息。
在本公开实施例的一种可能的实现形式中,处理逻辑中设置有格式转换逻辑;处理模块230,具体还被配置为执行:在处理逻辑的运行过程中,调用处理逻辑中的格式转换逻辑,对不满足设定格式的异常信息进行格式转换,得到设定格式的异常信息。
本公开实施例的页面源文件的处理装置,通过获取待运行的页面源文件,其中,页面源文件为采用异常捕获配置文件对初始源文件中预设关键字的作用域进行异常捕获配置后得到的文件;运行页面源文件;在页面源文件的运行过程中,调用页面源文件中配置的异常捕获逻辑方法,捕获作用域返回的异常信息。由此,无需人员在页面源文件中手动编写对应的异常捕获逻辑,可以降低开发人员的工作量,同时,还可以提升页面的开发效率。并且,自动捕获作用域返回的异常信息,还可以便于开发人员排查异常原因,从而对异常进行处理。
为了实现上述实施例,本公开实施例还提出了一种电子设备。
其中,电子设备包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,处理器被配置为执行指令,以实现如前所述的页面源文件的处理方法。
作为一种示例,图8是根据一示例性实施例示出的一种用于页面源文件的处理方法的电子设备200的框图,如图8所示,上述电子设备200,还可以包括:
存储器210及处理器220,连接不同组件(包括存储器210和处理器220)的总线230,存储器210存储有计算机程序,当处理器220执行所述程序时实现本公开实施例所述的页面源文件的处理方法。
总线230表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
电子设备200典型地包括多种电子设备可读介质。这些介质可以是任何能够被电子设备200访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储器210还可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)240和/或高速缓存存储器250。服务器200可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统260可以用于读写不可移动的、非易失性磁介质(图8未显示,通常称为“硬盘驱动器”)。尽管图8中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线230相连。存储器210可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本公开各实施例的功能。
具有一组(至少一个)程序模块270的程序/实用工具280,可以存储在例如存储器210中,这样的程序模块270包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块270通常执行本公开所描述的实施例中的功能和/或方法。
电子设备200也可以与一个或多个外部设备290(例如键盘、指向设备、显示器291等)通信,还可与一个或者多个使得用户能与该电子设备200交互的设备通信,和/或与使得该电子设备200能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口292进行。并且,电子设备200还可以通过网络适配器293与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器293通过总线230与电子设备200的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备200使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理器220通过运行存储在存储器210中的程序,从而执行各种功能应用以及数据处理。
需要说明的是,本实施例的电子设备的实施过程和技术原理参见前述对本公开实施例的页面源文件的处理方法的解释说明,此处不再赘述。
为了实现上述实施例,本公开实施例还提出了一种存储介质。
其中,当存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如前任一实施例提出的页面源文件的处理方法。
为了实现上述实施例,本公开还提供一种计算机程序产品,包括计算机程序,该计算机程序被电子设备的处理器执行时,使得电子设备能够执行如前任一实施例提出的页面源文件的处理方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (10)
1.一种页面源文件的处理方法,其特征在于,包括:
获取待处理页面的源文件、以及所述源文件中的关键字信息;
在所述关键字信息中存在预设关键字时,获取所述源文件中所述预设关键字的作用域;
在所述作用域满足预设的异常捕获配置条件时,采用异常捕获配置文件配置所述源文件中的所述作用域,生成配置后的源文件。
2.如权利要求1所述的页面源文件的处理方法,其特征在于,所述预设关键字为以下关键字中的至少一个:异步操作async关键字、暂停等待await关键字以及异步操作返回promise关键字。
3.如权利要求1所述的页面源文件的处理方法,其特征在于,所述获取所述源文件中所述预设关键字的作用域,包括:
将所述源文件中所述预设关键字之后的函数的内容,确定为所述源文件中所述预设关键字的作用域;
或者,
将所述源文件中包含所述预设关键字的函数的内容,确定为所述源文件中所述预设关键字的作用域。
4.如权利要求1所述的页面源文件的处理方法,其特征在于,所述异常捕获配置条件为,作用域未包含在异常捕获逻辑中;
所述的方法,还包括:
若所述作用域未包含在所述异常捕获逻辑中,则确定所述作用域满足预设的异常捕获配置条件;
若所述作用域包含在所述异常捕获逻辑中,则确定所述作用域不满足预设的异常捕获配置条件。
5.一种页面源文件的处理方法,其特征在于,包括:
获取待运行的页面源文件,其中,所述页面源文件为采用异常捕获配置文件对初始源文件中预设关键字的作用域进行异常捕获配置后得到的文件;
运行所述页面源文件;
在所述页面源文件的运行过程中,调用所述页面源文件中配置的异常捕获逻辑方法,捕获所述作用域返回的异常信息。
6.一种页面源文件的处理装置,其特征在于,包括:
第一获取模块,被配置为执行获取待处理页面的源文件、以及所述源文件中的关键字信息;
第二获取模块,被配置为执行在所述关键字信息中存在预设关键字时,获取所述源文件中所述预设关键字的作用域;
生成模块,被配置为执行在所述作用域满足预设的异常捕获配置条件时,采用异常捕获配置文件配置所述源文件中的所述作用域,生成配置后的源文件。
7.一种页面源文件的处理装置,其特征在于,包括:
获取模块,被配置为执行获取待运行的页面源文件,其中,所述页面源文件为采用异常捕获配置文件对初始源文件中预设关键字的作用域进行异常捕获配置后得到的文件;
运行模块,被配置为执行运行所述页面源文件;
处理模块,被配置为执行在所述页面源文件的运行过程中,调用所述页面源文件中配置的异常捕获逻辑方法,捕获所述作用域返回的异常信息。
8.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1-4中任一项所述的页面源文件的处理方法,或者实现如权利要求5所述的页面源文件的处理方法。
9.一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如权利要求1-4中任一项所述的页面源文件的处理方法,或者执行如权利要求5所述的页面源文件的处理方法。
10.一种计算机程序产品,其特征在于,包括计算机程序,所述计算机程序被处理器执行时实现如权利要求1-4中任一项所述的页面源文件的处理方法,或者实现如权利要求5所述的页面源文件的处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011583019.5A CN112685045A (zh) | 2020-12-28 | 2020-12-28 | 页面源文件的处理方法、装置、电子设备以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011583019.5A CN112685045A (zh) | 2020-12-28 | 2020-12-28 | 页面源文件的处理方法、装置、电子设备以及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112685045A true CN112685045A (zh) | 2021-04-20 |
Family
ID=75454053
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011583019.5A Pending CN112685045A (zh) | 2020-12-28 | 2020-12-28 | 页面源文件的处理方法、装置、电子设备以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112685045A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113342657A (zh) * | 2021-06-09 | 2021-09-03 | 网易(杭州)网络有限公司 | 一种检测代码异常的方法和装置 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103019874A (zh) * | 2012-12-13 | 2013-04-03 | 中国电子科技集团公司第十五研究所 | 基于数据同步实现异常处理的方法及装置 |
CN103257913A (zh) * | 2013-04-18 | 2013-08-21 | 西安交通大学 | 一种运行时软件故障检测排除系统和方法 |
CN104536897A (zh) * | 2015-01-16 | 2015-04-22 | 安一恒通(北京)科技有限公司 | 基于关键字的自动测试方法及系统 |
CN105760302A (zh) * | 2016-02-29 | 2016-07-13 | 浪潮软件集团有限公司 | 一种移动应用异常信息处理方法 |
CN107301115A (zh) * | 2017-06-26 | 2017-10-27 | 中国铁道科学研究院电子计算技术研究所 | 应用程序异常监控和恢复方法及设备 |
CN108459957A (zh) * | 2017-11-29 | 2018-08-28 | 平安科技(深圳)有限公司 | 基金系统测试用例的测试方法、装置、设备及存储介质 |
CN109240886A (zh) * | 2018-09-03 | 2019-01-18 | 平安科技(深圳)有限公司 | 异常处理方法、装置、计算机设备以及存储介质 |
CN109634654A (zh) * | 2018-12-04 | 2019-04-16 | 北京马上慧科技术有限公司 | 一种页面封装方法、装置、系统、计算机设备和存储介质 |
CN109783081A (zh) * | 2018-12-27 | 2019-05-21 | 百富计算机技术(深圳)有限公司 | 一种应用程序的开发方法、装置及集成开发工具 |
CN110321275A (zh) * | 2018-03-29 | 2019-10-11 | 腾讯科技(上海)有限公司 | 程序监控方法、装置、计算设备以及存储介质 |
CN111506470A (zh) * | 2020-03-24 | 2020-08-07 | 平安国际智慧城市科技股份有限公司 | 浏览器错误检测和告警方法、装置、设备及存储介质 |
CN111538573A (zh) * | 2020-03-27 | 2020-08-14 | 中国平安财产保险股份有限公司 | 异步任务处理方法、装置及计算机可读存储介质 |
-
2020
- 2020-12-28 CN CN202011583019.5A patent/CN112685045A/zh active Pending
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103019874A (zh) * | 2012-12-13 | 2013-04-03 | 中国电子科技集团公司第十五研究所 | 基于数据同步实现异常处理的方法及装置 |
CN103257913A (zh) * | 2013-04-18 | 2013-08-21 | 西安交通大学 | 一种运行时软件故障检测排除系统和方法 |
CN104536897A (zh) * | 2015-01-16 | 2015-04-22 | 安一恒通(北京)科技有限公司 | 基于关键字的自动测试方法及系统 |
CN105760302A (zh) * | 2016-02-29 | 2016-07-13 | 浪潮软件集团有限公司 | 一种移动应用异常信息处理方法 |
CN107301115A (zh) * | 2017-06-26 | 2017-10-27 | 中国铁道科学研究院电子计算技术研究所 | 应用程序异常监控和恢复方法及设备 |
CN108459957A (zh) * | 2017-11-29 | 2018-08-28 | 平安科技(深圳)有限公司 | 基金系统测试用例的测试方法、装置、设备及存储介质 |
CN110321275A (zh) * | 2018-03-29 | 2019-10-11 | 腾讯科技(上海)有限公司 | 程序监控方法、装置、计算设备以及存储介质 |
CN109240886A (zh) * | 2018-09-03 | 2019-01-18 | 平安科技(深圳)有限公司 | 异常处理方法、装置、计算机设备以及存储介质 |
CN109634654A (zh) * | 2018-12-04 | 2019-04-16 | 北京马上慧科技术有限公司 | 一种页面封装方法、装置、系统、计算机设备和存储介质 |
CN109783081A (zh) * | 2018-12-27 | 2019-05-21 | 百富计算机技术(深圳)有限公司 | 一种应用程序的开发方法、装置及集成开发工具 |
CN111506470A (zh) * | 2020-03-24 | 2020-08-07 | 平安国际智慧城市科技股份有限公司 | 浏览器错误检测和告警方法、装置、设备及存储介质 |
CN111538573A (zh) * | 2020-03-27 | 2020-08-14 | 中国平安财产保险股份有限公司 | 异步任务处理方法、装置及计算机可读存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113342657A (zh) * | 2021-06-09 | 2021-09-03 | 网易(杭州)网络有限公司 | 一种检测代码异常的方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9740594B2 (en) | Automated debug trace specification | |
CN109542399B (zh) | 软件开发方法、装置、终端设备及计算机可读存储介质 | |
US7937624B2 (en) | Method for handling a detected error in a script-based application | |
US8332765B2 (en) | Problem reporting system based on user interface interactions | |
CN108604200A (zh) | 处理终端设备的故障的方法和终端设备 | |
CN111240940B (zh) | 实时业务监控方法、装置、电子设备、存储介质 | |
CN108874672B (zh) | 应用程序异常定位方法、装置、设备及存储介质 | |
CN109783345B (zh) | 一种小程序性能测试方法和系统 | |
CN107045475B (zh) | 测试方法和装置 | |
CN112068932B (zh) | 应用程序的集成、监控方法、装置、系统、设备及介质 | |
CN111488257A (zh) | 一种云服务链路跟踪监控方法、装置、设备及存储介质 | |
CN112685045A (zh) | 页面源文件的处理方法、装置、电子设备以及存储介质 | |
CN111985760B (zh) | 数据内容的评价方法、装置、电子设备及存储介质 | |
CN110443062B (zh) | 多租户数据库的操作方法、装置和计算机设备 | |
CN113760491A (zh) | 一种任务调度系统、方法、设备及存储介质 | |
CN111966508A (zh) | 一种消息的批量发送方法、装置、计算机设备和存储介质 | |
CN112069158A (zh) | 一种数据修复方法、装置、设备和存储介质 | |
CN115828262A (zh) | 开源组件漏洞扫描方法、装置、设备及存储介质 | |
CN112783886B (zh) | 缓存清理方法、装置、计算机设备及存储介质 | |
CN110602162B (zh) | 终端取证方法、装置、设备和存储介质 | |
CN109634636B (zh) | 应用处理方法、装置、设备和介质 | |
CN112818204A (zh) | 一种业务的处理方法、装置、设备及存储介质 | |
CN111414270A (zh) | 一种异常处理方法及装置 | |
CN114168274A (zh) | 任务的处理方法、装置、电子设备及存储介质 | |
CN116302847B (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 |