一种生成API的方法及装置制造方法及图纸

技术编号:32560142 阅读:10 留言:0更新日期:2022-03-09 16:43
本申请公开了一种生成API的方法及装置,涉及计算机领域,该方法能够提高生成API的效率。该方法包括:获取用于查询待查询数据的可执行结构化查询语句SQL;根据该可执行SQL确定第一信息;基于该第一信息生成第二信息;根据该第二信息生成该可执行SQL的SQL模板;根据该SQL模板,生成API,该API用于访问待查询数据;其中,第一信息包括可执行SQL中属性参数的名称和该可执行SQL中条件参数的类型,该属性参数用于指示待查询数据的属性,该条件参数用于指示查询具有属性的待查询数据的查询条件;第二信息用于指示条件参数在SQL中的位置,与第一信息的映射关系。一信息的映射关系。一信息的映射关系。

【技术实现步骤摘要】
一种生成API的方法及装置


[0001]本申请涉及计算机领域,尤其涉及一种生成应用程序编程接口(application programming interface,API)的方法及装置。

技术介绍

[0002]基于互联网的应用变得越来越普及,越来越多的应用提供商将自身的数据资源开放给其他开发者来调用,从而实现了数据资源开放,并获得了更大的价值。
[0003]通常,应用提供商通过在API服务平台上创建并开放API来实现数据资源的开放。也就是说,应用提供商通过向其他开发者开放API,即可使其他开发者将开放的API所提供的数据资源整合到自己的应用服务之中。也即,其他开发者可以通过开放的API来调用被开放的数据资源。
[0004]然而,在传统的API创建过程中,主要依靠应用提供商的开发人员手动配置的参数与结构化查询语言(structured query language,SQL)模板来生成API,这种开发过程的流程通常较长。并且,当开发的API涉及的SQL十分复杂时,开发人员的工作量将极大,且出错机率高。

技术实现思路

[0005]本申请提供了一种生成API的方法及装置,能够提高生成API的效率。
[0006]为达上述目的,本申请提供如下技术方案:
[0007]第一方面,本申请提供了一种生成应用程序编程接口API的方法,该方法包括:获取用于查询待查询数据的可执行结构化查询语句SQL。根据该可执行SQL生成第一信息。基于该第一信息生成第二信息。根据该第二信息生成可执行SQL的SQL模板。根据该SQL模板,生成用于访问待查询数据的API。其中,第一信息包括可执行SQL中属性参数的名称和可执行SQL中条件参数的类型,该属性参数用于指示待查询数据的属性,该条件参数用于指示查询具有属性的待查询数据的查询条件。第二信息用于指示条件参数在SQL中的位置,与第一信息的映射关系。
[0008]基于本申请提供的生成API的方法,生成API的装置通过对可执行SQL的属性参数及条件参数的处理,从而生成该可执行SQL的SQL模板,然后生成API的装置即可基于该SQL模板生成用于访问该可执行SQL所指示的待查询数据的API。相比现有技术,通过本申请提供的方法生成API,简化了人工配置参数的流程,大大提高了生成API的效率。
[0009]在一种可能的设计方式中,上述的属性参数包括字段,上述的条件参数包括数值或字符串。
[0010]在另一种可能的设计方式中,上述的“根据该可执行SQL确定第一信息”包括:将该可执行SQL解析为至少一个条件语句单元,该一个条件语句单元包括一个属性参数和一个条件参数。提取该至少一个条件语句单元中的属性参数和条件参数。基于所提取的属性参数和条件参数,生成至少一个第一信息,该至少一个第一信息和前述的至少一个条件语句
单元一一对应。
[0011]在另一种可能的设计方式中,上述的“基于该第一信息生成第二信息”包括:在上述可执行SQL中对用于生成第一信息的条件参数的位置进行标记。基于在该可执行SQL中所标记的地址标识和该第一信息,生成第二信息,该第二信息和该第一信息对应。
[0012]在另一种可能的设计方式中,上述的“根据该第二信息生成可执行SQL的SQL模板”包括:根据该第二信息,将用于标记上述可执行SQL中条件参数位置的地址标识替换为预设信息,以得到SQL模板。
[0013]在另一种可能的设计方式中,在上述“根据该第二信息生成可执行SQL的SQL模板”之前,上述方法还包括:基于可执行SQL中的属性参数,确定允许被开放式访问的目标属性参数。上述的“根据该第二信息生成可执行SQL的SQL模板”包括:根据所确定的目标属性参数对应的第二信息,将用于标记可执行SQL中的目标属性参数对应条件参数位置的地址标识,替换为预设信息,以得到SQL模板。
[0014]通过该可能的设计方式,可以使数据提供方灵活控制允许对外开放数据资源范围,即提高了数据资源开放的灵活度。
[0015]第二方面,本申请提供了一种生成应用程序编程接口API的装置。
[0016]在一种可能的设计方式中,该生成API的装置用于执行上述第一方面提供的任一种方法。本申请可以根据上述第一方面提供的任一种方法,对该生成API的装置进行功能模块的划分。例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。示例性的,本申请可以按照功能将该生成API的装置划分为获取单元和生成单元等。上述划分的各个功能模块执行的可能的技术方案和有益效果的描述均可以参考上述第一方面或其相应的可能的设计提供的技术方案,此处不再赘述。
[0017]在另一种可能的设计中,该生成API的装置包括:存储器和一个或多个处理器,存储器和处理器耦合。存储器用于存储计算机指令,处理器用于调用该计算机指令,以执行如第一方面及其任一种可能的设计方式提供的任一种方法。
[0018]第三方面,本申请提供了一种计算机可读存储介质,如计算机非瞬态的可读存储介质。其上储存有计算机程序(或指令),当该计算机程序(或指令)在生成API的装置上运行时,使得该生成API的装置执行上述第一方面中的任一种可能的实现方式提供的任一种方法。
[0019]第四方面,本申请提供了一种计算机程序产品,当其在生成API的装置上运行时,使得第一方面中的任一种可能的实现方式提供的任一种方法被执行。
[0020]第五方面,本申请提供了一种芯片系统,包括:处理器,处理器用于从存储器中调用并运行该存储器中存储的计算机程序,执行第一方面中的实现方式提供的任一种方法。
[0021]可以理解的是,上述提供的任一种装置、计算机存储介质、计算机程序产品或芯片系统等均可以应用于上文所提供的对应的方法,因此,其所能达到的有益效果可参考对应的方法中的有益效果,此处不再赘述。
[0022]在本申请中,上述生成API的装置的名字对设备或功能模块本身不构成限定,在实际实现中,这些设备或功能模块可以以其他名称出现。只要各个设备或功能模块的功能和本申请类似,属于本申请权利要求及其等同技术的范围之内。
[0023]本申请的这些方面或其他方面在以下的描述中会更加简明易懂。
附图说明
[0024]图1为本申请实施例提供的生成API的装置的硬件结构示意图;
[0025]图2为本申请实施例提供的一种数据访问系统示意图;
[0026]图3为本申请实施例提供的生成API的方法的流程示意图一;
[0027]图4为本申请实施例提供的生成API的方法的流程示意图二;
[0028]图5为本申请实施例提供的生成API的方法的流程示意图三;
[0029]图6为本申请实施例提供的一种生成API的装置的结构示意图;
[0030]图7为本申请实施例提供的一种芯片系统的结构示意图;
[0031]图8为本申请实施例提供的计算机程序产品的结构示意图。
具体实施方式
[003本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种生成应用程序编程接口API的方法,其特征在于,包括:获取可执行结构化查询语句SQL,所述可执行SQL用于查询待查询数据;根据所述可执行SQL生成第一信息,所述第一信息包括所述可执行SQL中属性参数的名称和所述可执行SQL中条件参数的类型,所述属性参数用于指示所述待查询数据的属性,所述条件参数用于指示查询具有所述属性的待查询数据的查询条件;基于所述第一信息生成第二信息,所述第二信息用于指示所述条件参数在所述SQL中的位置,与所述第一信息的映射关系;根据所述第二信息生成所述可执行SQL的SQL模板;根据所述SQL模板,生成所述API,所述API用于访问所述待查询数据。2.根据权利要求1所述的方法,其特征在于,所述属性参数包括字段,所述条件参数包括数值或字符串。3.根据权利要求1或2所述的方法,其特征在于,所述根据所述可执行SQL确定第一信息,具体包括:将所述可执行SQL解析为至少一个条件语句单元,一个所述条件语句单元包括一个属性参数和一个条件参数;提取所述至少一个条件语句单元中的属性参数和条件参数;基于所提取的属性参数和条件参数,生成至少一个第一信息,所述至少一个第一信息和所述至少一个条件语句单元一一对应。4.根据权利要求1-3中任一项所述的方法,其特征在于,所述基于所述第一信息生成第二信息,具体包括:在所述可执行SQL中对用于生成所述第一信息的条件参数的位置进行标记;基于在所述可执行SQL中所标记的地址标识和所述第一信息,生成所述第二信息,所述第二信息和所述第一信息对应。5.根据权利要求1-4中任一项所述的方法,其特征在于,所述根据所述第二信息生成所述可执行SQL的SQL模板,具体包括:根据所述第二信息,将用于标记所述可执行SQL中条件参数位置的地址标识替换为预设信息,以得到所述SQL模板。6.根据权利要求1-4中任一项所述的方法,其特征在于,在所述根据所述第二信息生成所述可执行SQL的SQL模板之前,所述方法还包括:基于所述可执行SQL中的属性参数,确定允许被开放式访问的目标属性参数;所述根据所述第二信息生成所述可执行SQL的SQL模板,具体包括:根据所述目标属性参数对应的第二信息,将用于标记所述可执行SQL中的所述目标属性参数对应条件参数位置的地址标识,替换为预设信息,以得到所述SQL模板。7.一种生成应用程序编程接口API的装置,其特征在于,所述装置包括:获取单元,用于获取可执行结构化查询语句SQL,所述可执行SQL用于查询待查询数据;生成单元,用于根据所述可执行SQL生成第一信息,所述第一信息包括所述可执行SQ...

【专利技术属性】
技术研发人员:李灵杰
申请(专利权)人:华为云计算技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1