本公开涉及软件开发,尤其涉及一种应用程序编程接口代码的处理方法及装置。
背景技术:
1、目前,为了保证应用程序编程接口api调用参数的可用性,开发者需要手动编写大量的代码。然而,手动编写大量的代码会影响开发效率且难以保证准确性。
技术实现思路
1、有鉴于此,本技术实施例提供了一种api代码的处理方法及装置,用于提高开发效率。
2、第一方面,本公开的实施例提供了一种api代码的处理方法,包括:
3、在确定目标应用程序编程接口的原始代码中通过第一注解对所述目标应用程序编程接口进行了声明的情况下,在所述原始代码中生成应用程序编程接口处理器类;
4、在确定所述原始代码中通过第二注解声明了所述目标应用程序编程接口的调用参数的情况下,在所述应用程序编程接口处理器类中生成所述目标应用程序编程接口对应的参数解析器类和第一应用程序编程接口处理方法;
5、其中,所述参数解析器类包括所述目标应用程序编程接口对应的解析结果模版,所述第一应用程序编程接口处理方法用于根据所述调用参数向所述解析结果模版中填充数据,以获取所述调用参数的解析结果。
6、作为本技术实施例一种可选的实施方式,所述方法还包括:
7、在所述原始代码中通过第二注解声明了所述目标api的调用参数的情况下,在所述api处理器类中生成第二api处理方法;
8、根据针对所述第二api处理方法输入的扩展操作,将所述第二api处理方法扩展处理为第三api处理方法;
9、其中,所述第三api处理方法用于对所述调用参数进行处理获取处理后的调用参数,并根据所述处理后的调用参数向所述解析结果模版中填充数据,以获取所述调用参数的解析结果,且所述第三api处理方法的优先级高于所述第一api处理方法。
10、作为本技术实施例一种可选的实施方式,所述方法还包括:
11、确定所述原始代码中是否通过第三注解声明了所述目标api调用成功时的成功场景信息;所述成功场景信息包括:所述目标api调用成功时需要回调的数据以及各个需要回调的数据的数据类型;
12、在所述原始代码中通过所述第三注解声明了所述成功场景信息的情况下,根据所述成功场景信息在所述api处理器类中生成成功场景回调器类;
13、其中,所述成功场景回调器类用于在所述目标api调用成功时构建所述目标api的回调数据。
14、作为本技术实施例一种可选的实施方式,所述方法还包括:
15、确定所述原始代码中是否通过第四注解声明了所述目标api调用失败时的失败场景信息;所述失败场景信息包括:所述目标api调用失败时需要回调的数据以及各个需要回调的数据的数据类型;
16、在所述原始代码中通过所述第四注解声明了所述失败场景信息的情况下,根据所述失败场景信息在所述api处理器类中生成失败场景回调方法;
17、其中,所述失败场景回调方法用于在所述目标api调用失败时构建所述目标api的回调数据。
18、作为本技术实施例一种可选的实施方式,所述方法还包括:
19、在所述原始代码中通过所述第二注解声明了所述目标api的调用参数的情况下,确定所述原始代码中是否通过第五注解对所述目标api进行了声明;
20、在所述原始代码中通过所述第五注解对所述目标api进行了声明的情况下,在所述原始代码中生成调用参数构造类;
21、其中,所述调用参数构造类用于根据所述调用参数重构所述目标api的调用参数。
22、作为本技术实施例一种可选的实施方式,所述方法还包括:
23、确定所述原始代码中是否通过第六注解对所述目标api进行了声明;
24、在所述原始代码通过所述第六注解对所述目标api进行了声明的情况下,在所述原始代码中生成所述目标api对应的api信息生成器类,在所述原始代码中生成所述目标api对应的api分发器类,并在所述api分发器类的api分发方法中生成关联代码;
25、其中,所述关联代码用于将所述目标api的处理分发至所述目标api对应的api处理器。
26、作为本技术实施例一种可选的实施方式,所述方法还包括:
27、确定所述原始代码中是否通过第七注解声明了所述目标api的api信息;
28、在所述原始代码中通过所述第七注解声明了所述目标api的api信息的情况下,在所述原始代码中生成所述目标api对应的api信息生成器类,并根据所述目标api的api信息在所述api信息生成器类中生成所述目标api的信息实体对象。
29、第二方面,本公开的实施例提供了一种api代码的处理装置,包括:
30、第一处理单元,在确定目标应用程序编程接口的原始代码中通过第一注解对所述目标应用程序编程接口进行了声明的情况下,在所述原始代码中生成应用程序编程接口处理器类;
31、第二处理单元,用于在确定所述原始代码中通过第二注解声明了所述目标应用程序编程接口的调用参数的情况下,在所述应用程序编程接口处理器类中生成所述目标应用程序编程接口对应的参数解析器类和第一应用程序编程接口处理方法;
32、其中,所述参数解析器类包括所述目标应用程序编程接口对应的解析结果模版,所述第一应用程序编程接口处理方法用于根据所述调用参数向所述解析结果模版中填充数据,以获取所述调用参数的解析结果。
33、作为本技术实施例一种可选的实施方式,所述第二处理单元,还用于在所述原始代码中通过第二注解声明了所述目标api的调用参数的情况下,在所述api处理器类中生成第二api处理方法,以及根据针对所述第二api处理方法输入的扩展操作,将所述第二api处理方法扩展处理为第三api处理方法;
34、其中,所述第三api处理方法用于对所述调用参数进行处理获取处理后的调用参数,并根据所述处理后的调用参数向所述解析结果模版中填充数据,以获取所述调用参数的解析结果,且所述第三api处理方法的优先级高于所述第一api处理方法。
35、作为本技术实施例一种可选的实施方式,
36、所述第一处理单元,还用于确定所述原始代码中是否通过第三注解声明了所述目标api调用成功时的成功场景信息,以及在所述原始代码中通过所述第三注解声明了所述成功场景信息的情况下,根据所述成功场景信息在所述api处理器类中生成成功场景回调器类;
37、其中,所述成功场景信息包括:所述目标api调用成功时需要回调的数据以及各个需要回调的数据的数据类型;所述成功场景回调器类用于在所述目标api调用成功时构建所述目标api的回调数据。
38、作为本技术实施例一种可选的实施方式,
39、所述第一处理单元,还用于确定所述原始代码中是否通过第四注解声明了所述目标api调用失败时的失败场景信息,以及在所述原始代码中通过所述第四注解声明了所述失败场景信息的情况下,根据所述失败场景信息在所述api处理器类中生成失败场景回调方法;
40、其中,所述失败场景信息包括:所述目标api调用失败时需要回调的数据以及各个需要回调的数据的数据类型;所述失败场景回调方法用于在所述目标api调用失败时构建所述目标api的回调数据。
41、作为本技术实施例一种可选的实施方式,
42、所述第二处理单元,还用于在所述原始代码中通过所述第二注解声明了所述目标api的调用参数的情况下,确定所述原始代码中是否通过第五注解对所述目标api进行了声明,以及在所述原始代码中通过所述第五注解对所述目标api进行了声明的情况下,在所述原始代码中生成调用参数构造类;
43、其中,所述调用参数构造类用于根据所述调用参数重构所述目标api的调用参数。
44、作为本技术实施例一种可选的实施方式,
45、所述第二处理单元,还用于确定所述原始代码中是否通过第六注解对所述目标api进行了声明,以及在所述原始代码通过所述第六注解对所述目标api进行了声明的情况下,在所述原始代码中生成所述目标api对应的api分发器类,并在所述api分发器类的api分发方法中生成关联代码;
46、其中,所述关联代码用于将所述目标api的处理分发至所述目标api对应的api处理器。
47、作为本技术实施例一种可选的实施方式,
48、所述第二处理单元,还用于确定所述原始代码中是否通过第七注解声明了所述目标api的api信息,以及在所述原始代码中通过所述第七注解声明了所述目标api的api信息的情况下,在所述原始代码中生成所述目标api对应的api信息生成器类,并根据所述目标api的api信息在所述api信息生成器类中生成所述目标api的信息实体对象。
49、第三方面,本技术实施例提供一种电子设备,包括:存储器和处理器,所述存储器用于存储计算机程序所述处理器用于在执行计算机程序时,使得所述电子设备实现上述任一实施方式所述的api代码的处理方法。
50、第四方面,本技术实施例提供一种计算机可读存储介质,当所述计算机程序被计算设备执行时,使得所述计算设备实现上述任一实施方式所述的api代码的处理方法。
51、第五方面,本技术实施例提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机实现上述任一实施方式所述的api代码的处理方法。
52、本技术实施例提供的api代码的处理方法在获取目标api的原始代码之后,首先确定所述原始代码中是否通过第一注解对所述目标api进行了声明,并在所述原始代码中通过所述第一注解对所述目标api进行了声明的情况下,在所述原始代码中生成api处理器类,然后再确定所述原始代码中是否通过第二注解声明了所述目标api的调用参数,以及在在所述原始代码中通过所述第二注解声明了所述目标api的调用参数的情况下,在所述api处理器类中生成所述目标api对应的参数解析器类和第一api处理方法。由于所述参数解析器类包括所述目标api对应的解析结果模版,且所述第一api处理方法能够根据所述调用参数向所述解析结果模版中填充数据,以获取所述调用参数的解析结果,因此在进行所述目标api的原始代码开发时,开发人员只要通过第一注解声明所述目标api,并通过第二注解声明所述目标api的调用参数即可保证目标api调用参数的正确解析和可用性,而不需要编写调用参数的解析逻辑和可用性判定逻辑,因此本技术实施例可以提高开发效率。
1.一种应用程序编程接口代码的处理方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
8.一种应用程序编程接口代码的处理装置,其特征在于,包括:
9.一种电子设备,其特征在于,包括:存储器和处理器,所述存储器用于存储计算机程序所述处理器用于在执行计算机程序时,使得所述电子设备实现权利要求1-7任一项所述的应用程序编程接口代码的处理方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,当所述计算机程序被计算设备执行时,使得所述计算设备实现权利要求1-7任一项所述的应用程序编程接口代码的处理方法。