CN111367690A - 一种支持组合api服务调用方法及装置 - Google Patents

一种支持组合api服务调用方法及装置 Download PDF

Info

Publication number
CN111367690A
CN111367690A CN202010138232.9A CN202010138232A CN111367690A CN 111367690 A CN111367690 A CN 111367690A CN 202010138232 A CN202010138232 A CN 202010138232A CN 111367690 A CN111367690 A CN 111367690A
Authority
CN
China
Prior art keywords
api
calling
combined
dependency
sequence
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
Application number
CN202010138232.9A
Other languages
English (en)
Inventor
章磊
王炳辉
易辛悦
周歆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202010138232.9A priority Critical patent/CN111367690A/zh
Publication of CN111367690A publication Critical patent/CN111367690A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/549Remote execution

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本发明提供了一种支持组合API服务调用方法及装置,支持组合API服务调用方法包括:接收调用方根据所述组合API的参数所构建的请求报文;根据所述请求报文确定所述组合API的顺序依赖属性;根据所述请求报文及所述顺序依赖属性调用所述组合API。本发明可使得调用方仅需一次API调用即可完成业务流程,从而减少业务流程的网络消耗等开销。此外组合API的暴露仅需通过通用配置即可完成,无需进行额外开发工作,可根据业务场景快速组合企业内部API形成组合API进行发布。

Description

一种支持组合API服务调用方法及装置
技术领域
本发明涉及信息技术领域,具体涉及信息技术与数据业务结合的技术领域,特别是涉及一种支持组合API服务调用方法及装置。
背景技术
随着开放平台的兴起,越来越多的企业内部API接口通过开放平台对外提供服务。传统的开发平台调用中,若一次业务流程涉及多个API接口,且这些API调用间存在调用顺序,需要调用方按顺序发起多次API接口调用,针对每个API接口调用进行处理方能完成整个流程。而多次调用涉及多次http/http请求,势必带来较长的http/https传输耗时,在整体交易耗时中占据较大比重。
另外,从服务提供者的角度来看,各种服务的提供者越来越明确,单个企业内部API所提供的功能相对单一,往往不能实现用户的目标,一完整的服务通常需要包含几个基本的企业内部API。例如一个出国旅游服务可能由飞机订票、旅馆预订、汽车租赁等几个部API服务组合而成。因此为了实现满足用户提出的各种需求的完备功能,必须将分散的单个API服务有效、机动地组合起来,形成具有增值价值的组合API服务。
发明内容
针对现有技术中的问题,本发明提供的支持组合API服务调用方法及装置,可使得调用方仅需一次API调用即可完成业务流程,从而减少业务流程的网络消耗等开销。此外组合API的暴露仅需通过通用配置即可完成,无需进行额外开发工作,可根据业务场景快速组合企业内部API形成组合API进行发布。
为解决上述技术问题,本发明提供以下技术方案:
第一方面,本发明提供一种支持组合API服务调用方法,包括:
接收调用方根据所述组合API的参数所构建的请求报文;
根据所述请求报文确定所述组合API的顺序依赖属性;
根据所述请求报文及所述顺序依赖属性调用所述组合API。
优选地,所述参数为所述组合API的所有内部API的参数集合,所述参数集合包括:JSON数组以及XML对象。
优选地,所述顺序依赖属性包括:顺序依赖型以及非顺序依赖型。
优选地,所述根据所述请求报文及所述顺序依赖属性调用所述组合API,包括:
当所述顺序依赖属性为顺序依赖型时,根据预设的调用次序提取所述组合API中每个API所需的参数,以调用每个API接口;
当所述顺序依赖属性为非顺序依赖型时,利用串行或者并行的方法调用每个API接口。
优选地,支持组合API服务调用方法还包括:
当所述顺序依赖属性为顺序依赖型时,解析每个API的返回码,以判断调用对应的API是否成功。
第二方面,本发明提供一种支持组合API服务调用装置,该装置包括:
请求报文接收单元,用于接收调用方根据所述组合API的参数所构建的请求报文;
顺序确定单元,用于根据所述请求报文确定所述组合API的顺序依赖属性;
API调用单元,用于根据所述请求报文及所述顺序依赖属性调用所述组合API。
优选地,所述参数为所述组合API的所有内部API的参数集合,所述参数集合包括:JSON数组以及XML对象。
优选地,所述顺序依赖属性包括:顺序依赖型以及非顺序依赖型。
优选地,所述API调用单元包括:
顺序API调用模块,用于当所述顺序依赖属性为顺序依赖型时,根据预设的调用次序提取所述组合API中每个API所需的参数,以调用每个API接口;
非顺序API调用模块,用于当所述顺序依赖属性为非顺序依赖型时,利用串行或者并行的方法调用每个API接口。
优选地,支持组合API服务调用装置还包括:
返回码解析单元,用于当所述顺序依赖属性为顺序依赖型时,解析每个API的返回码,以判断调用对应的API是否成功。
第三方面,本发明提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现支持组合API服务调用方法的步骤。
第四方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现支持组合API服务调用方法的步骤。
从上述描述可知,本发明提供的支持组合API服务调用方法及装置,通过在开放平台API网关处维护一个组合API,该API由多个内部API组成,并按业务场景预先维护多个内部API的调用顺序,对外暴露一个组合API服务。调用方仅需调用一次API服务,由开放平台API网关依次进行内部API服务的调用,便可完成整个业务流程。通过组合API的引入,简化调用方的调用流程,调用方仅需一次API调用即可完成业务流程,也可减少业务流程的网络消耗等开销。此外组合API的暴露仅需通过通用配置即可完成,无需进行额外开发工作,可根据业务场景快速组合企业内部API形成组合API进行发布。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的实施例中支持组合API服务调用方法流程示意图一;
图2为本发明的实施例中支持组合API服务调用方法步骤300的流程示意图;
图3为本发明的实施例中支持组合API服务调用方法流程示意图一;
图4为本发明的具体应用实例中支持组合API服务调用方法的流程示意图;
图5为本发明的具体应用实例中支持组合API服务调用装置的结构示意图一;
图6为本发明的具体应用实例中API调用单元的结构示意图;
图7为本发明的具体应用实例中支持组合API服务调用装置的结构示意图二;
图8为本发明的实施例中的电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
鉴于在现有传统的开发平台多个API调用过程中,存在较长的http/https传输耗时,在整体交易耗时中占据较大比重。本发明的实施例提供一种支持组合API服务调用方法的具体实施方式,参见图1,该方法具体包括如下内容:
步骤100:接收调用方根据所述组合API的参数所构建的请求报文。
可以理解的是,API(Application Programming Interface,应用程序接口)是指一些预先定义的函数,或指软件***不同组成部分衔接的约定。构建其目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问原码,或理解内部工作机制的细节。
另外,步骤100中的组合API的参数为该组合API涉及的所有内部API的参数集合,可用JSON数组、XML对象等形式组织,其中数组或对象中的每个元素为每个内部服务所需的所有参数。
步骤200:根据所述请求报文确定所述组合API的顺序依赖属性。
具体地,可结合源码结构特征对内核接口进行统计分析,利用统计信息挖掘并提取API接口的顺序依赖规则,并利用提取的规则检测现有源码中的使用违例,辅助提高可靠性,并且不需要开发者提供额外的注释及标注.相比传统方法具备以下优势:不需要用户定义具体的API接口使用规则,根据统计信息进行挖掘并检测序列化规则。跨函数直接进行接口的使用规范提取。结合源码结构信息和统计信息,无需程序提供额外的标注。
步骤300:根据所述请求报文及所述顺序依赖属性调用所述组合API。
针对提取的调用序列,通过分析各个API接口函数的参数和返回值提取序列内接口函数之间的参数、返回值依赖,为后续的结构推导和统计提供支持。根据提取的依赖关系对调用序列的顺序依赖进行组合API调用。
从上述描述可知,本发明提供的支持组合API服务调用方法及,通过在开放平台API网关处维护一个组合API,该API由多个内部API组成,并按业务场景预先维护多个内部API的调用顺序,对外暴露一个组合API服务。调用方仅需调用一次API服务,由开放平台API网关依次进行内部API服务的调用,便可完成整个业务流程。通过组合API的引入,简化调用方的调用流程,调用方仅需一次API调用即可完成业务流程,也可减少业务流程的网络消耗等开销。此外组合API的暴露仅需通过通用配置即可完成,无需进行额外开发工作,可根据业务场景快速组合企业内部API形成组合API进行发布。
一实施例中,所述参数为所述组合API的所有内部API的参数集合,所述参数集合包括:JSON数组以及XML对象。
可以理解的是,JSON数组或XML对象中的每个元素为每个内部服务所需的所有参数。具体地,JSON中数组值的类型包括字符串、数字、对象、数组、布尔或null。优选地,还包括JavaScript表达式,包括函数、日期和undefined。
一实施例中,所述顺序依赖属性包括:顺序依赖型以及非顺序依赖型。
可以理解的是,顺序依懒型是指组合API的调用顺序为预设的顺序关系,多个API的调用次序为特定,相对地,非顺序依赖型是指组合API的调用顺序为非特定,可串行或者并行的调用组合API内的多个API。
一实施例中,参见图2,步骤300包括:
步骤301:当所述顺序依赖属性为顺序依赖型时,根据预设的调用次序提取所述组合API中每个API所需的参数,以调用每个API接口。
步骤302:当所述顺序依赖属性为非顺序依赖型时,利用串行或者并行的方法调用每个API接口。
具体地,对于非顺序依赖型API,组合API涉及的内部API的调用之间无顺序依赖。可采取串行或并行方式进行内部API的调用对于非顺序依赖型组合API涉及的内部API的返回码不进行解析,直至所有内部API调用完成才会返回响应结果给调用方。对于并行方式调用,通过多线程等方式并行发起对涉及的内部API调用,组合API调用内部耗时为涉及的所有内部API中耗时最长的API调用耗时。对于串行调用,涉及的内部API调用顺序进行,组合API内部耗时为涉及的所有内部API调用耗时之和。并行方式相对串行方式可以显著改善响应效率,减少调用方侧的等待时间。此外并行调用由开放平台网关处理,降低了调用方的使用门槛。
一实施例中,参见图3,支持组合API服务调用方法还包括:
步骤400:当所述顺序依赖属性为顺序依赖型时,解析每个API的返回码,以判断调用对应的API是否成功。
步骤400在实施时,具体为:对于顺序依赖型组合API,严格按预先配置的调用次序依次提取每个内部API需要的请求参数,进行每个内部API接口的调用。每个内部API提供统一的如JSON、XML等形式的返回报文格式(统一返回码与返回信息,业务参数可在返回信息内部定义)。在调用每个内部API时,根据返回码判定该笔内部API调用的成功与否。若调用失败或响应报文返回码为错误返回码,则终止整个内部API的调用流程,直接返回报错响应给调用方。否则按约定的顺序调用该组合API涉及的所有内部API。调用完毕后将所有内部API的调用结果聚合后返回给调用方。
从上述描述可知,本发明提供的支持组合API服务调用方法,通过在开放平台API网关处维护一个组合API,该API由多个内部API组成,并按业务场景预先维护多个内部API的调用顺序,对外暴露一个组合API服务。调用方仅需调用一次API服务,由开放平台API网关依次进行内部API服务的调用,便可完成整个业务流程。通过组合API的引入,简化调用方的调用流程,调用方仅需一次API调用即可完成业务流程,也可减少业务流程的网络消耗等开销。此外组合API的暴露仅需通过通用配置即可完成,无需进行额外开发工作,可根据业务场景快速组合企业内部API形成组合API进行发布。
为进一步地说明本方案,本发明以开放平台为例,提供支持组合API服务调用方法的具体应用实例,该具体应用实例具体包括如下内容,参见图4。
S0:调用方根据组合API的参数构造请求报文,并发送至开放平台网关。
开放平台提供统一的组合API维护框架,选取组合API涉及的相关内部API,定义一个组合API接口信息,在该组合API下维护这些内部API的调用顺序。组合API的请求参数为该组合API涉及的所有内部API的参数集合,可用JSON数组、XML对象等形式组织,其中数组或对象中的每个元素为每个内部服务所需的所有参数。调用方根据组合API的请求参数进行调用,仅需调用一次组合API接口,便可由开放平台API网关自动完成该组合API接口涉及的内部API接口,调用方根据开放平台网关返回的响应结果进行业务流程处理即可。
S1:根据所述请求报文确定所述组合API的顺序依赖属性。
设置组合API的顺序依赖属性(分为顺序依赖型与非顺序依赖型API)。对外发布成一个统一的组合API接口。组合API的相关信息通过通用参数表的形式在开放平台网关组装并对外暴露,可快速配置,无需进行额外开发。
S2:组装组合API的相应报文。
组合API的响应报文由开放平台网关组装,开放平台网关提取内部API的响应结果,组装成响应报文后返回给调用方。若任意一个内部API调用报错,则返回该内部API的报错报文及调用顺序在该内部API接口之前的内部API返回报文结果集。
S3:根据所述请求报文及所述顺序依赖属性调用所述组合API。
开放平台API网关根据调用方上送的请求参数,进行组合API服务的内部调用处理。对于顺序依赖型组合API,严格按预先配置的调用次序依次提取每个内部API需要的请求参数,进行每个内部API接口的调用。
对于非顺序依赖型API,组合API涉及的内部API的调用之间无顺序依赖。开放平台网关可采取串行或并行方式进行内部API的调用,
对于处理耗时较长的组合API接口,开放平台网关提供异步调用的支持,只需在组合API上增加异步调用属性的配置。对于异步调用组合API,调用方需事先登记或在请求中上送一个接收响应结果的url地址,调用方请求到达开放平台网关后立即返回响应给调用方,该响应提示调用方的请求已在处理中。等开放平台网关处理完该请求后,按照调用方事先登记的url将响应结果推送给调用方,避免调用方长时间的无效等待。
S4:判断调用对应的API是否成功。
对于非顺序依赖型API,每个内部API提供统一的如JSON、XML等形式的返回报文格式(统一返回码与返回信息,业务参数可在返回信息内部定义)。在调用每个内部API时,根据返回码判定该笔内部API调用的成功与否。若调用失败或响应报文返回码为错误返回码,则终止整个内部API的调用流程,直接返回报错响应给调用方。否则按约定的顺序调用该组合API涉及的所有内部API。调用完毕后将所有内部API的调用结果聚合后返回给调用方。
对于非顺序依赖型API,开放平台网关对于非顺序依赖型组合API涉及的内部API的返回码不进行解析,直至所有内部API调用完成才会返回响应结果给调用方。对于并行方式调用,通过多线程等方式并行发起对涉及的内部API调用,组合API调用内部耗时为涉及的所有内部API中耗时最长的API调用耗时。对于串行调用,涉及的内部API调用顺序进行,组合API内部耗时为涉及的所有内部API调用耗时之和。并行方式相对串行方式可以显著改善响应效率,减少调用方侧的等待时间。此外并行调用由开放平台网关处理,降低了调用方的使用门槛。
S5:对单个API维度进行熔断控制。
在每笔组合API调用结束时,开放平台网关会对交易耗时、该组合API涉及的内部API的调用成功率等情况进行统计,可针对交易耗时、成功率等进行组合API、单个内部API维度的熔断控制。成功率可根据需要设置阈值,如成功率低于70%时进行熔断。对于交易耗时维度的熔断控制,可设置如单个API交易平均耗时大于500毫秒时进行熔断控制,可设置如组合API平均耗时大于1秒时进行熔断控制。
另外,可对每个内部API服务通常部署多个节点,可通过注册中心进行服务的发现与注册等。借助注册中心,内部API服务节点定期将节点信息上送给注册中心,开放平台网关定期从注册中心获取内部API服务节点信息,按照预先配置的负载均衡策略选择其中一台节点发起请求。此外也可不借助注册中心,由内部API服务节点直接将节点信息定期通知给开放平台网关。
开放平台网关除上述功能外,也需完成鉴权、身份认证、限流、ip白名单等功能,其中限流可以组合API、内部API等为粒度。开放平台网关会对响应结果进行签名,防止响应结果在网络链路中被截取篡改。开放平台网关可进行不同协议的转换,屏蔽内部多协议对外界的差异,可支持grpc、Dubbo等基于远程过程调用协议的内部API接口通过http/https方式对外暴露。对于带宽较小或网络延时较长的调用方,开放平台网关支持返回gzip、deflate等方式压缩后的响应报文,通过降低返回报文大小降低报文传输耗时。
从上述描述可知,本发明提供的支持组合API服务调用方法,通过在开放平台API网关处维护一个组合API,该API由多个内部API组成,并按业务场景预先维护多个内部API的调用顺序,对外暴露一个组合API服务。调用方仅需调用一次API服务,由开放平台API网关依次进行内部API服务的调用,便可完成整个业务流程。通过组合API的引入,简化调用方的调用流程,调用方仅需一次API调用即可完成业务流程,也可减少业务流程的网络消耗等开销。此外组合API的暴露仅需通过通用配置即可完成,无需进行额外开发工作,可根据业务场景快速组合企业内部API形成组合API进行发布。
基于同一发明构思,本申请实施例还提供了支持组合API服务调用装置,可以用于实现上述实施例所描述的方法,如下面的实施例。由于支持组合API服务调用装置解决问题的原理与支持组合API服务调用方法相似,因此支持组合API服务调用装置的实施可以参见支持组合API服务调用方法实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的***较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
本发明的实施例提供一种能够实现支持组合API服务调用方法的支持组合API服务调用装置的具体实施方式,参见图5,支持组合API服务调用装置具体包括如下内容:
请求报文接收单元10,用于接收调用方根据所述组合API的参数所构建的请求报文;
顺序确定单元20,用于根据所述请求报文确定所述组合API的顺序依赖属性;
API调用单元30,用于根据所述请求报文及所述顺序依赖属性调用所述组合API。
优选地,所述参数为所述组合API的所有内部API的参数集合,所述参数集合包括:JSON数组以及XML对象。
优选地,所述顺序依赖属性包括:顺序依赖型以及非顺序依赖型。
优选地,参见图6,所述API调用单元30包括:
顺序API调用模块301,用于当所述顺序依赖属性为顺序依赖型时,根据预设的调用次序提取所述组合API中每个API所需的参数,以调用每个API接口;
非顺序API调用模块302,用于当所述顺序依赖属性为非顺序依赖型时,利用串行或者并行的方法调用每个API接口。
优选地,参见图7,支持组合API服务调用装置还包括:
返回码解析单元40,用于当所述顺序依赖属性为顺序依赖型时,解析每个API的返回码,以判断调用对应的API是否成功。
从上述描述可知,本发明提供的支持组合API服务调用装置,通过在开放平台API网关处维护一个组合API,该API由多个内部API组成,并按业务场景预先维护多个内部API的调用顺序,对外暴露一个组合API服务。调用方仅需调用一次API服务,由开放平台API网关依次进行内部API服务的调用,便可完成整个业务流程。通过组合API的引入,简化调用方的调用流程,调用方仅需一次API调用即可完成业务流程,也可减少业务流程的网络消耗等开销。此外组合API的暴露仅需通过通用配置即可完成,无需进行额外开发工作,可根据业务场景快速组合企业内部API形成组合API进行发布。
本申请的实施例还提供能够实现上述实施例中的支持组合API服务调用方法中全部步骤的一种电子设备的具体实施方式,参见图8,电子设备具体包括如下内容:
处理器(processor)1201、存储器(memory)1202、通信接口(CommunicationsInterface)1203和总线1204;
其中,处理器1201、存储器1202、通信接口1203通过总线1204完成相互间的通信;通信接口1203用于实现服务器端设备、接口设备以及用户端设备等相关设备之间的信息传输。
处理器1201用于调用存储器1202中的计算机程序,处理器执行计算机程序时实现上述实施例中的支持组合API服务调用方法中的全部步骤,例如,处理器执行计算机程序时实现下述步骤:
步骤100:接收调用方根据所述组合API的参数所构建的请求报文。
步骤200:根据所述请求报文确定所述组合API的顺序依赖属性。
步骤300:根据所述请求报文及所述顺序依赖属性调用所述组合API。
从上述描述可知,本申请实施例中的电子设备,通过在开放平台API网关处维护一个组合API,该API由多个内部API组成,并按业务场景预先维护多个内部API的调用顺序,对外暴露一个组合API服务。调用方仅需调用一次API服务,由开放平台API网关依次进行内部API服务的调用,便可完成整个业务流程。通过组合API的引入,简化调用方的调用流程,调用方仅需一次API调用即可完成业务流程,也可减少业务流程的网络消耗等开销。此外组合API的暴露仅需通过通用配置即可完成,无需进行额外开发工作,可根据业务场景快速组合企业内部API形成组合API进行发布。
本申请的实施例还提供能够实现上述实施例中的支持组合API服务调用方法中全部步骤的一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的支持组合API服务调用方法的全部步骤,例如,处理器执行计算机程序时实现下述步骤:
步骤100:接收调用方根据所述组合API的参数所构建的请求报文。
步骤200:根据所述请求报文确定所述组合API的顺序依赖属性。
步骤300:根据所述请求报文及所述顺序依赖属性调用所述组合API。
从上述描述可知,本申请实施例中的计算机可读存储介质,通过在开放平台API网关处维护一个组合API,该API由多个内部API组成,并按业务场景预先维护多个内部API的调用顺序,对外暴露一个组合API服务。调用方仅需调用一次API服务,由开放平台API网关依次进行内部API服务的调用,便可完成整个业务流程。通过组合API的引入,简化调用方的调用流程,调用方仅需一次API调用即可完成业务流程,也可减少业务流程的网络消耗等开销。此外组合API的暴露仅需通过通用配置即可完成,无需进行额外开发工作,可根据业务场景快速组合企业内部API形成组合API进行发布。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于硬件+程序类实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
虽然本申请提供了如实施例或流程图的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或客户端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (12)

1.一种支持组合API服务调用方法,其特征在于,包括:
接收调用方根据所述组合API的参数所构建的请求报文;
根据所述请求报文确定所述组合API的顺序依赖属性;
根据所述请求报文及所述顺序依赖属性调用所述组合API。
2.根据权利要求1所述的支持组合API服务调用方法,其特征在于,所述参数为所述组合API的所有内部API的参数集合,所述参数集合包括:JSON数组以及XML对象。
3.根据权利要求1所述的支持组合API服务调用方法,其特征在于,所述顺序依赖属性包括:顺序依赖型以及非顺序依赖型。
4.根据权利要求3所述的支持组合API服务调用方法,其特征在于,所述根据所述请求报文及所述顺序依赖属性调用所述组合API,包括:
当所述顺序依赖属性为顺序依赖型时,根据预设的调用次序提取所述组合API中每个API所需的参数,以调用每个API接口;
当所述顺序依赖属性为非顺序依赖型时,利用串行或者并行的方法调用每个API接口。
5.根据权利要求4所述的支持组合API服务调用方法,其特征在于,还包括:
当所述顺序依赖属性为顺序依赖型时,解析每个API的返回码,以判断调用对应的API是否成功。
6.一种支持组合API服务调用装置,其特征在于,包括:
请求报文接收单元,用于接收调用方根据所述组合API的参数所构建的请求报文;
顺序确定单元,用于根据所述请求报文确定所述组合API的顺序依赖属性;
API调用单元,用于根据所述请求报文及所述顺序依赖属性调用所述组合API。
7.根据权利要求6所述的支持组合API服务调用装置,其特征在于,所述参数为所述组合API的所有内部API的参数集合,所述参数集合包括:JSON数组以及XML对象。
8.根据权利要求6所述的支持组合API服务调用装置,其特征在于,所述顺序依赖属性包括:顺序依赖型以及非顺序依赖型。
9.根据权利要求8所述的支持组合API服务调用装置,其特征在于,所述API调用单元包括:
顺序API调用模块,用于当所述顺序依赖属性为顺序依赖型时,根据预设的调用次序提取所述组合API中每个API所需的参数,以调用每个API接口;
非顺序API调用模块,用于当所述顺序依赖属性为非顺序依赖型时,利用串行或者并行的方法调用每个API接口。
10.根据权利要求8所述的支持组合API服务调用装置,其特征在于,还包括:
返回码解析单元,用于当所述顺序依赖属性为顺序依赖型时,解析每个API的返回码,以判断调用对应的API是否成功。
11.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至5任一项所述支持组合API服务调用方法的步骤。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至5任一项所述支持组合API服务调用方法的步骤。
CN202010138232.9A 2020-03-03 2020-03-03 一种支持组合api服务调用方法及装置 Pending CN111367690A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010138232.9A CN111367690A (zh) 2020-03-03 2020-03-03 一种支持组合api服务调用方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010138232.9A CN111367690A (zh) 2020-03-03 2020-03-03 一种支持组合api服务调用方法及装置

Publications (1)

Publication Number Publication Date
CN111367690A true CN111367690A (zh) 2020-07-03

Family

ID=71208366

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010138232.9A Pending CN111367690A (zh) 2020-03-03 2020-03-03 一种支持组合api服务调用方法及装置

Country Status (1)

Country Link
CN (1) CN111367690A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112437126A (zh) * 2020-11-10 2021-03-02 中国联合网络通信集团有限公司 基于原子接口的任务流程处理方法和设备
CN114006754A (zh) * 2021-10-29 2022-02-01 重庆长安汽车股份有限公司 一种防护api接口配置安全策略数据的方法及基于网关调用开放平台服务的方法及***
US11928532B1 (en) * 2022-10-07 2024-03-12 Ideatec Co., Ltd. Gateway device for integrally processing APIs with security function, and method of operating same

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107846435A (zh) * 2016-09-20 2018-03-27 ***通信有限公司研究院 业务实现***及方法
CN107920094A (zh) * 2016-10-08 2018-04-17 阿里巴巴集团控股有限公司 数据获取方法、装置、服务器及网络设备
CN108228369A (zh) * 2018-01-19 2018-06-29 北京邮电大学 基于json树的可视化api组合***及方法
CN109857377A (zh) * 2019-01-07 2019-06-07 平安科技(深圳)有限公司 一种api编排方法及装置
US10540270B1 (en) * 2018-01-25 2020-01-21 Amazon Technologies, Inc. Representation-based automated software testing

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107846435A (zh) * 2016-09-20 2018-03-27 ***通信有限公司研究院 业务实现***及方法
CN107920094A (zh) * 2016-10-08 2018-04-17 阿里巴巴集团控股有限公司 数据获取方法、装置、服务器及网络设备
CN108228369A (zh) * 2018-01-19 2018-06-29 北京邮电大学 基于json树的可视化api组合***及方法
US10540270B1 (en) * 2018-01-25 2020-01-21 Amazon Technologies, Inc. Representation-based automated software testing
CN109857377A (zh) * 2019-01-07 2019-06-07 平安科技(深圳)有限公司 一种api编排方法及装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112437126A (zh) * 2020-11-10 2021-03-02 中国联合网络通信集团有限公司 基于原子接口的任务流程处理方法和设备
CN114006754A (zh) * 2021-10-29 2022-02-01 重庆长安汽车股份有限公司 一种防护api接口配置安全策略数据的方法及基于网关调用开放平台服务的方法及***
US11928532B1 (en) * 2022-10-07 2024-03-12 Ideatec Co., Ltd. Gateway device for integrally processing APIs with security function, and method of operating same

Similar Documents

Publication Publication Date Title
CN107329861B (zh) 一种多接口测试方法及装置
CN106998343B (zh) 一种远程过程调用处理方法、装置及***
CN107920094B (zh) 数据获取方法、装置、服务器及网络设备
CN111367690A (zh) 一种支持组合api服务调用方法及装置
CN108228444B (zh) 一种测试方法和装置
CN111090423B (zh) 一种webhook框架***和实现主动调用、实现事件触发的方法
US10831565B2 (en) Fault tolerant adapter system to consume database as a service
CN109254854A (zh) 异步调用方法、计算机装置及存储介质
CN111200523B (zh) 中台***配置方法、装置、设备及存储介质
CN106713469B (zh) 用于分布式容器的动态加载方法、装置及***
CN111478956A (zh) 小程序包的部署、预览方法和装置
CN112817565A (zh) 微服务组合方法、装置、设备及存储介质
CN110781180A (zh) 一种数据筛选方法和数据筛选装置
CN107517188A (zh) 一种基于安卓***的数据处理方法和装置
US20210373984A1 (en) Automatic code generation for api mashups
CN112667204A (zh) 微服务应用的数据处理方法、装置和计算机设备
CN112423024A (zh) 一种视频转码方法、装置、计算机设备和存储介质
CN110389754B (zh) 业务处理方法、***、服务器、终端、电子设备及存储介质
CN112788078B (zh) 数据传输方法、接收装置、发送装置和计算机设备
CN108076067B (zh) 一种授权爬虫配置化模拟登录的方法及***
CN113485942A (zh) 一种基于独立模块的自动化测试方法及装置
CN112929453A (zh) 一种共享session数据的方法和装置
CN111949260A (zh) 一种移动端业务配置化方法及***
CN102148755A (zh) 大型机注入组件和仿真器与大型机间传输的分组的操纵法
CN108170536B (zh) Web程序的拓展方法和装置

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