The embodiment of the present invention provides a method and apparatus for transmitting API requests of an application program interface, relating to the field of computer technology. The method comprises a first API gateway receiving a first API request, the first API gateway obtaining a first forwarding tag corresponding to the first API request, and the first forwarding tag containing a first target security. The first API gateway determines the address of the second API gateway according to the corresponding relationship between the first target security domain identification and the address of the second API gateway, and according to the address of the second API gateway, will The first API request is sent to the second API gateway, where the second API gateway sends the next hop API gateway of the first API request for the first API gateway to the API gateway corresponding to the first target security domain identification. The invention can improve the efficiency of the API request.
【技术实现步骤摘要】
一种传输应用程序编程接口API请求的方法及装置
本申请涉及计算机
,尤其涉及一种传输应用程序编程接口API请求的方法及装置。
技术介绍
目前,随着互联网技术和应用软件技术的发展,微服务架构由于其易于维护、迭代速度快等优势逐渐成为主流的应用程序架构。在微服务架构中,开发人员可以将应用程序拆分成多个独立运行的服务器,根据各服务器的安全等级将服务器划分为多个安全域。在每个安全域中设置应用程序编程接口(ApplicationProgrammingInterface,API)网关,接收客户端发送的API请求,将该API请求转发给对应的服务器。在现有技术中,客户端发送的API请求中携带有请求地址。当API网关接收到该API请求时,对该API请求进行解析,得到该请求地址,然后根据该请求地址查询预先存储的请求地址与服务地址的对应关系表,得到目标服务地址,如果该目标服务地址为该API网关所属安全域的服务地址,则将该API请求转发给对应的服务器;如果该目标服务地址为其他安全域的API网关的地址(即API请求需要跨多个安全域),则将该API请求发送至下一跳API网关,下一跳API ...
【技术保护点】
1.一种传输应用程序编程接口API请求的方法,其特征在于,所述方法包括:第一API网关接收第一API请求;所述第一API网关获取所述第一API请求对应的第一转发标签,所述第一转发标签包含第一目标安全域标识;其中,所述第一API网关的安全域标识与所述第一目标安全域标识不同;所述第一API网关根据所述第一目标安全域标识和第二API网关的地址的对应关系,确定所述第二API网关的地址,并根据所述第二API网关的地址,将所述第一API请求发送给所述第二API网关;其中,所述第二API网关为所述第一API网关向所述第一目标安全域标识对应的API网关发送所述第一API请求的下一跳API网关。
【技术特征摘要】
1.一种传输应用程序编程接口API请求的方法,其特征在于,所述方法包括:第一API网关接收第一API请求;所述第一API网关获取所述第一API请求对应的第一转发标签,所述第一转发标签包含第一目标安全域标识;其中,所述第一API网关的安全域标识与所述第一目标安全域标识不同;所述第一API网关根据所述第一目标安全域标识和第二API网关的地址的对应关系,确定所述第二API网关的地址,并根据所述第二API网关的地址,将所述第一API请求发送给所述第二API网关;其中,所述第二API网关为所述第一API网关向所述第一目标安全域标识对应的API网关发送所述第一API请求的下一跳API网关。2.根据权利要求1所述的方法,其特征在于,所述第一API网关获取所述第一API请求对应的第一转发标签,具体包括:获取所述第一API请求携带的请求路径;根据所述请求路径和所述第一转发标签的映射表,确定所述第一转发标签。3.根据权利要求1所述的方法,其特征在于,所述第一API网关获取所述第一API请求对应的第一转发标签,具体包括:获取所述第一API请求携带的请求路径和第一参数,所述第一参数包括API调用方式和/或协议版本号;根据所述请求路径、所述第一参数和预设的特征值算法,确定所述第一API请求对应的特征值;根据所述特征值和所述第一转发标签的映射表,确定所述第一转发标签。4.根据权利要求1所述的方法,其特征在于,所述第一API网关获取所述第一API请求对应的第一转发标签,具体包括:获取所述第一API请求携带的请求路径、第二参数和第三参数,所述第二参数包括API调用方式和/或协议版本号,所述第三参数包括请求头和/或请求附加参数;根据所述请求路径、所述第二参数和预设的特征值算法,确定所述第一API请求对应的特征值;根据所述特征值、所述第三参数和所述第一转发标签的映射表,确定所述第一转发标签。5.根据权利要求1所述的方法,其特征在于,所述方法还包括:所述第一API网关接收第二API请求;其中,所述第二API请求携带有第二转发标签,所述第二转发标签包含所述第一API网关的安全域标识和第一目标服务地址;所述第一API网关删除所述第二API请求中的第二转发标签;所述第一API网关将删除所述第二转发标签后的第二API请求发送给所述第一目标服务地址对应的服务器。6.根据权利要求1所述的方法,其特征在于,所述方法还包括:所述第一API网关接收第三API请求;所述第一API网关获取所述第三API请求对应的第三转发标签,所述第三转发标签包含所述第一API网关的安全域标识和第二目标服务地址;所述第一API网关将所述第三API请求发送给所述第二目标服务地址对应的服务器。7.一种传输应用程序编程接口API请求的装置,其特征在于,所述装置应用于第一API网关,所述装置包括:第一接收模块,用于接收第一API请求;第一获取模块,用于获取所述第一API请求对应的第一转发标签,所述第一转发标签包含第一目标安全域标识;其中,所述第一API网关的安全域标识与所述第一目标安全域标识不同;第一发送模块,用于根据所述第一目标安全域标识和第二API网关的地址的对应关系,确定所述第二API网关的地址,并根据所述第二API网关的地址,将所述第一API请求发送给所述第二API网关;其中,所述第二API网关为所述第一API网关向所述第一目标安全域标识对应的API网关发送所述第一API请求的下一跳API网关。8.根据权利要求1所述的装置,其特征在于,所述第一获取模块,具体包括:获取所述第一API请求携带的请求路径;根据所述请求路径和所述第一转发标签的映射表,确定所述第一转发标签。9.根据权利要求1所述的装置,其特征在于,所述第一获取模块,具体包括:获取所述第一API请求携带的请求路径和第一参数,所述第一参数包括API调用方式和/或协议版本号;根据所述请求路径、所述第一参数和预设的特征值算法,确定所述第一API请求对应的特征值;根据所述特征值和所述第一转发标签的映射表,确定所述第一转发标签。10.根据权利要求1所述的装置,其特征在于,所述第一获取模块,具体包括:获取所述第一API请求携带的请求路径、第...
【专利技术属性】
技术研发人员:陆昕,陈劲,惠毓赓,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。