CN113138811A - 基于JsonPath的统一服务调用方法 - Google Patents
基于JsonPath的统一服务调用方法 Download PDFInfo
- Publication number
- CN113138811A CN113138811A CN202110439501.XA CN202110439501A CN113138811A CN 113138811 A CN113138811 A CN 113138811A CN 202110439501 A CN202110439501 A CN 202110439501A CN 113138811 A CN113138811 A CN 113138811A
- Authority
- CN
- China
- Prior art keywords
- interface
- calling
- jsonpath
- configuration language
- parameter configuration
- 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
- 238000000034 method Methods 0.000 title claims abstract description 30
- 230000002159 abnormal effect Effects 0.000 claims description 11
- 230000006870 function Effects 0.000 description 3
- 238000006467 substitution reaction Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000009545 invasion Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4496—Unification in logic programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4482—Procedural
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及一种基于JsonPath的统一服务调用方法,包括:接收服务调用请求指令,调用请求指令包括调用接口信息;根据接口选择策略,在接口组合中选择与调用接口信息相匹配的目标接口;查询目标接口的JsonPath通用入参配置语言,并转化通用入参配置语言为目标接口入参配置语言;根据目标接口入参配置语言,调用目标接口,使得可以实现由JsonPath统一配置,无需开发新的代码,直接通过数据库进行配置,不仅适应性强,还有效地提高了接口调用的灵活性。
Description
技术领域
本发明属于服务调用技术领域,具体涉及一种基于JsonPath的统一服务调用方法。
背景技术
业务系统调用大量的第三方接口,并且入参和出参都是使用率最高的Json,并且同一种的接口有多个提供方。目前,多为直接通过http客户端进行调用请求,具体操作时需要配置大量的代码,且每来一个请求都要写新的代码。
但是,在服务调用时不仅不能做到热插拔,还导致扩展性差,灵活性差。
发明内容
为了至少解决现有技术存在的上述问题,本发明提供了一种基于JsonPath的统一服务调用方法,以提高服务调用的灵活性。
本发明提供的技术方案如下:
一种基于JsonPath的统一服务调用方法,包括:
接收服务调用请求指令,所述调用请求指令包括调用接口信息;
根据接口选择策略,在接口组合中选择与所述调用接口信息相匹配的目标接口;
查询所述目标接口的JsonPath通用入参配置语言,并转化所述通用入参配置语言为目标接口入参配置语言;
根据所述目标接口入参配置语言,调用所述目标接口。
可选的,上述所述调用所述目标接口之后,还包括:
修改所述目标接口的出参配置语言为通用出参配置语言;
根据所述通用出参配置语言,调用所述接口组合中的所有接口,以实现统一入参。
可选的,上述所述接收服务调用请求指令之前,还包括:
获取接口组合中每个接口的入参配置语言;
根据所述每个接口的入参配置语言和预设规则参数,建立接口选择策略。
可选的,上述所述预设规则参数包括负载均衡、错误率和超时率。
可选的,上述所述的基于JsonPath的统一服务调用方法,还包括:
检测所述接口组合中的所有接口是否存在异常接口;
若发现异常接口,切换或剔除所述异常接口,并发出接口异常提示。
本发明的有益效果为:
本发明提供的一种基于JsonPath的统一服务调用方法,包括:接收服务调用请求指令,调用请求指令包括调用接口信息;根据接口选择策略,在接口组合中选择与调用接口信息相匹配的目标接口;查询目标接口的JsonPath通用入参配置语言,并转化通用入参配置语言为目标接口入参配置语言;根据目标接口入参配置语言,调用目标接口,使得可以实现由JsonPath统一配置,无需开发新的代码,直接通过数据库进行配置,不仅适应性强,还有效地提高了接口调用的灵活性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的基于JsonPath的统一服务调用方法的一种流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将对本发明的技术方案进行详细的描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本发明所保护的范围。
图1是本发明实施例提供的基于JsonPath的统一服务调用方法的一种流程图。
如图1所示,本实施例提供的一种基于JsonPath的统一服务调用方法,包括以下步骤:
S11、接收服务调用请求指令,调用请求指令包括调用接口信息。
在接收到服务调用请求指令时,通常调用请求指令包括了调用接口信息,也就是说明确的决定了要调用的具体的接口,通过调用接口休息能够直接的在所有的接口里选择对应的接口。
S12、根据接口选择策略,在接口组合中选择与调用接口信息相匹配的目标接口。
具体的,在接收服务调用请求之前需要先建立接口选择策略,具体的建立流程便是获取接口组合中每个接口的入参配置语言;根据每个接口的入参配置语言和预设规则参数,建立接口选择策略,其中,预设规则参数包括负载均衡、错误率和超时率。然后便基于接口选择策略,在接口组合中选择与调用接口信息相匹配的目标接口。例如,接口组合包括A组接口1,A组接口2和A组接口3,而服务调用接口请求中的调用接口信息是调用A组接口2,系统便会自动的根据接口选择策略选定A组接口2。
S13、查询目标接口的JsonPath通用入参配置语言,并转化通用入参配置语言为目标接口入参配置语言。
在选定目标接口以后,查询目标接口的JsonPath通用入参配置语言,在查询到以后,将目标接口的JsonPath通用入参配置语言转化为目标接口入参配置语言,也就是把通用的入参配置语言转化为目标接口的入参配置语言。
S14、根据目标接口入参配置语言,调用目标接口。
然后,再根据转化后的目标接口入参配置语言,调用目标接口,使得无需重新开发,便可以直接通过数据库配置,缓存读取,而且零侵入,无需开发新的代码也无需嵌入原来的代码,还可以适用于所有接口调用多的场景。
本实施例提供的一种基于JsonPath的统一服务调用方法,包括:接收服务调用请求指令,调用请求指令包括调用接口信息;根据接口选择策略,在接口组合中选择与调用接口信息相匹配的目标接口;查询目标接口的JsonPath通用入参配置语言,并转化通用入参配置语言为目标接口入参配置语言;根据目标接口入参配置语言,调用目标接口,使得可以实现由JsonPath统一配置,无需开发新的代码,直接通过数据库进行配置,不仅适应性强,还有效地提高了接口调用的灵活性。
进一步地,本实施例中在调用目标接口之后,还包括:修改目标接口的出参配置语言为通用出参配置语言;根据通用出参配置语言,调用接口组合中的所有接口,以实现统一入参。也就是将目标接口的出参配置语言改为通用出参配置语言,以实现灵活配置。
进一步地,本实施例中的基于JsonPath的统一服务调用方法,还包括:检测接口组合中的所有接口是否存在异常接口,若发现异常接口,切换或剔除异常接口,并发出接口异常提示,从而实现系统的稳定运行。
本申请的实施例提供一种存储介质,存储介质存储有计算机程序,计算机程序被处理器执行时,实现如以上任意实施例所述的新型多功能快递柜的控制方法的各个步骤。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。
需要说明的是,在本发明的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是指至少两个。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (5)
1.一种基于JsonPath的统一服务调用方法,其特征在于,包括:
接收服务调用请求指令,所述调用请求指令包括调用接口信息;
根据接口选择策略,在接口组合中选择与所述调用接口信息相匹配的目标接口;
查询所述目标接口的JsonPath通用入参配置语言,并转化所述通用入参配置语言为目标接口入参配置语言;
根据所述目标接口入参配置语言,调用所述目标接口。
2.根据权利要求1所述的基于JsonPath的统一服务调用方法,其特征在于,所述调用所述目标接口之后,还包括:
修改所述目标接口的出参配置语言为通用出参配置语言;
根据所述通用出参配置语言,调用所述接口组合中的所有接口,以实现统一入参。
3.根据权利要求1所述的基于JsonPath的统一服务调用方法,其特征在于,所述接收服务调用请求指令之前,还包括:
获取接口组合中每个接口的入参配置语言;
根据所述每个接口的入参配置语言和预设规则参数,建立接口选择策略。
4.根据权利要求3所述的基于JsonPath的统一服务调用方法,其特征在于,所述预设规则参数包括负载均衡、错误率和超时率。
5.根据权利要求1所述的基于JsonPath的统一服务调用方法,其特征在于,还包括:
检测所述接口组合中的所有接口是否存在异常接口;
若发现异常接口,切换或剔除所述异常接口,并发出接口异常提示。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110439501.XA CN113138811A (zh) | 2021-04-23 | 2021-04-23 | 基于JsonPath的统一服务调用方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110439501.XA CN113138811A (zh) | 2021-04-23 | 2021-04-23 | 基于JsonPath的统一服务调用方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113138811A true CN113138811A (zh) | 2021-07-20 |
Family
ID=76811937
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110439501.XA Pending CN113138811A (zh) | 2021-04-23 | 2021-04-23 | 基于JsonPath的统一服务调用方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113138811A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106462407A (zh) * | 2014-05-16 | 2017-02-22 | 微软技术许可有限责任公司 | 用于语言无关调度的代码服务 |
CN108021710A (zh) * | 2017-12-28 | 2018-05-11 | 广东蜂助手网络技术股份有限公司 | 一种动态接口转换方法、装置、终端设备及存储介质 |
CN109840155A (zh) * | 2017-11-24 | 2019-06-04 | 中兴通讯股份有限公司 | 一种实现远程过程调用的方法及装置 |
CN111104421A (zh) * | 2019-12-31 | 2020-05-05 | 新奥数能科技有限公司 | 一种基于数据接口标准配置的数据查询方法及装置 |
CN111930618A (zh) * | 2020-07-31 | 2020-11-13 | 银盛支付服务股份有限公司 | 一种基于接口测试方法及系统 |
CN112329415A (zh) * | 2020-10-27 | 2021-02-05 | 江苏华邦网络科技有限公司 | 一种基于java web的出入参处理方法及系统 |
-
2021
- 2021-04-23 CN CN202110439501.XA patent/CN113138811A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106462407A (zh) * | 2014-05-16 | 2017-02-22 | 微软技术许可有限责任公司 | 用于语言无关调度的代码服务 |
CN109840155A (zh) * | 2017-11-24 | 2019-06-04 | 中兴通讯股份有限公司 | 一种实现远程过程调用的方法及装置 |
CN108021710A (zh) * | 2017-12-28 | 2018-05-11 | 广东蜂助手网络技术股份有限公司 | 一种动态接口转换方法、装置、终端设备及存储介质 |
CN111104421A (zh) * | 2019-12-31 | 2020-05-05 | 新奥数能科技有限公司 | 一种基于数据接口标准配置的数据查询方法及装置 |
CN111930618A (zh) * | 2020-07-31 | 2020-11-13 | 银盛支付服务股份有限公司 | 一种基于接口测试方法及系统 |
CN112329415A (zh) * | 2020-10-27 | 2021-02-05 | 江苏华邦网络科技有限公司 | 一种基于java web的出入参处理方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20150365528A1 (en) | Voice displaying | |
WO2021129008A1 (zh) | 服务调用方法、装置、设备及介质 | |
CN109600384B (zh) | Rpc接口升级中流量切换方法、系统、设备及存储介质 | |
CN109271259B (zh) | 企业服务总线系统、数据处理方法、终端及存储介质 | |
CN110677475A (zh) | 一种微服务处理方法、装置、设备及存储介质 | |
CN111984388A (zh) | 云环境分布式事务下数据一致性的协调方法及装置、介质 | |
CN107645476B (zh) | 请求处理方法和装置 | |
CN110620721A (zh) | 一种网关设备、应用方法和业务系统 | |
CN108647102B (zh) | 异构系统的服务请求处理方法、装置和电子设备 | |
CN112437155B (zh) | 服务数据的处理方法、装置以及服务端设备 | |
CN113179295B (zh) | 报文处理方法及装置 | |
CN109711152A (zh) | 一种应用保活方法、计算设备及存储介质 | |
CN112818336A (zh) | 一种数据访问方法、数据访问装置及计算机可读存储介质 | |
CN113138811A (zh) | 基于JsonPath的统一服务调用方法 | |
CN110930253B (zh) | 智能合约内部主键生成方法、装置、计算机设备及存储介质 | |
CN110275701B (zh) | 数据处理方法、装置、介质和计算设备 | |
CN110516176A (zh) | 用户请求的处理方法、装置、电子设备及可读存储介质 | |
CN112258300B (zh) | 一种针对订单生成的审核方法及装置 | |
CN111262794B (zh) | 网关的流量控制方法及装置 | |
CN111061576B (zh) | 一种实体对象的创建方法及系统 | |
CN113312390A (zh) | 业务数据调用方法、装置及存储介质和电子设备 | |
CN108920277B (zh) | 业务执行系统、方法及装置、业务隔离系统 | |
CN114928635A (zh) | 一种微服务调用方法及相关设备 | |
CN110417904B (zh) | 一种推送信息处理方法、装置及系统 | |
JP2014155136A (ja) | Apl−gw−fe |
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 |