CN117349049A - 一种接口请求的调用方法、装置及计算机可读存储介质 - Google Patents

一种接口请求的调用方法、装置及计算机可读存储介质 Download PDF

Info

Publication number
CN117349049A
CN117349049A CN202311434991.XA CN202311434991A CN117349049A CN 117349049 A CN117349049 A CN 117349049A CN 202311434991 A CN202311434991 A CN 202311434991A CN 117349049 A CN117349049 A CN 117349049A
Authority
CN
China
Prior art keywords
target
interface
name
module
preset
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
CN202311434991.XA
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.)
Thalys Automobile Co ltd
Original Assignee
Thalys Automobile Co ltd
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 Thalys Automobile Co ltd filed Critical Thalys Automobile Co ltd
Priority to CN202311434991.XA priority Critical patent/CN117349049A/zh
Publication of CN117349049A publication Critical patent/CN117349049A/zh
Pending legal-status Critical Current

Links

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
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Stored Programmes (AREA)

Abstract

本申请涉及接口技术领域,公开了一种接口请求的调用方法、装置及计算机可读存储介质,方法包括:获取目标接口所属业务模块的模块名称,以及目标接口的接口名称;根据模块名称和接口名称,从预设配置文件中获取到目标数据;其中;目标数据中包括目标接口对应的目标方法和目标路径,预设配置文件中包括各个业务模块下属的多个接口对应的方法和路径;根据目标方法和目标路径,生成目标接口对应的调用请求。本申请无需为各个接口预先配置相应的代码,避免书写多个重复代码,以避免增加维护负担。同时,根据目标方法和目标路径,快速生成目标接口对应的调用请求。

Description

一种接口请求的调用方法、装置及计算机可读存储介质
技术领域
本申请涉及接口技术领域,具体涉及一种接口请求的调用方法、装置及计算机可读存储介质。
背景技术
目前所有自动化测试的方法需要加上异常机制,并记录运行日志,致使常规代码篇幅较长,针对每一个接口都需要书写代码,其中存在多个重复代码,致使测试过程的可维护性差,不利于扩展。同时,因为代码复杂,从而导致接口调用速度缓慢。
发明内容
鉴于上述问题,本申请公开了一种接口请求的调用方法、装置及计算机可读存储介质,以将业务模块下属的接口相关数据存储至预设配置文件中,用于快速生成目标接口对应的调用请求。
根据本申请实施例的一个方面,提供了一种接口请求的调用方法,所述调用方法包括:获取目标接口所属业务模块的模块名称,以及所述目标接口的接口名称;根据所述模块名称和所述接口名称,从预设配置文件中获取到目标数据;其中;所述目标数据中包括所述目标接口对应的目标方法和目标路径,所述预设配置文件中包括各个业务模块下属的多个接口对应的方法和路径;根据所述目标方法和所述目标路径,生成所述目标接口对应的调用请求。
在一种可选的方式中,在所述根据所述模块名称和所述接口名称,从预设配置文件中获取到目标数据之前,所述调用方法还包括:在预设基类中构建得到用于获取子类的类名的预设属性,以使所述预设属性将所述模块名称转化为子类,以及将所述接口名称转化为所述子类的类名。
在一种可选的方式中,所述调用方法还包括:检测令牌是否为空值;若不为空值,则将所述令牌对应的参数插入请求头部数据中。
在一种可选的方式中,所述根据所述目标方法和所述目标路径,生成所述目标接口对应的调用请求,进一步包括:根据所述目标接口的路径标识参数和所述目标路径,确定出所述目标接口对应的目标统一资源定位符;根据所述目标统一资源定位符,所述目标方法和所述请求头部数据,生成所述目标接口对应的调用请求。
在一种可选的方式中,在所述根据所述目标方法和所述目标路径,生成所述目标接口对应的调用请求之后,所述调用方法还包括:记录运行日志,并获取所述运行日志中的当前实例信息;根据当前实例信息确定当前子类是否继承预设基类。
在一种可选的方式中,所述根据当前实例信息确定当前子类是否继承预设基类,进一步包括:检测当前实例信息是否与隶属于所述预设基类的预设实例信息相匹配;其中,当前实例信息包括当前子类和当前子类的当前类名;若匹配结果表征当前子类与所述模块名称相匹配,并且当前类名与所述接口名称相匹配,则确定当前子类继承所述预设基类。
在一种可选的方式中,在所述根据所述模块名称和所述接口名称,从预设配置文件中获取到目标数据之前,所述调用方法还包括:将每个接口隶属的业务模块作为相应接口的父节点,并将每个接口对应的方法和路径作为相应接口的子节点,以得到数据层级顺序;根据所述数据层级顺序将每个业务模块中的各个接口,以及各个接口对应的方法和路径存储至所述预设配置文件中。
根据本申请实施例的另一方面,提供了一种接口请求的调用装置,所述调用装置包括:获取模块,用于获取目标接口所属业务模块的模块名称,以及所述目标接口的接口名称;目标数据模块,用于根据所述模块名称和所述接口名称,从预设配置文件中获取到目标数据;其中;所述目标数据中包括所述目标接口对应的目标方法和目标路径,所述预设配置文件中包括各个业务模块下属的多个接口对应的方法和路径;调用模块,用于根据所述目标方法和所述目标路径,生成所述目标接口对应的调用请求。
根据本申请实施例的一个方面,提供了一种电子设备,包括:控制器;存储器,用于存储一个或多个程序,当一个或多个程序被所述控制器执行时,以执行上述的调用方法。
根据本申请实施例的一个方面,还提供了一种计算机可读存储介质,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行上述的调用方法。
根据本申请实施例的一个方面,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述的调用方法。
本申请根据目标接口所属业务模块的模块名称,以及目标接口的接口名称,从预设配置文件中获取到目标接口对应的目标方法和目标路径;其中,预设配置文件中预先存储有各个业务模块下属的多个接口对应的方法和路径。无需为各个接口预先配置相应的代码,避免书写多个重复代码,以避免增加维护负担。同时,根据目标方法和目标路径,快速生成目标接口对应的调用请求。
上述说明仅是本申请实施例技术方案的概述,为了能够更清楚了解本申请实施例的技术手段,而可依照说明书的内容予以实施,并且为了让本申请实施例的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术者来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一示例性实施例示出的一种接口请求的调用方法的流程示意图。
图2是本申请一示例性实施例示出的登录业务模块下属接口及接口相关数据的示意图。
图3是本申请一示例性实施例示出的获取子类的类名的代码示意图。
图4是本申请一示例性实施例示出的生成接口对应调用请求的代码示意图。
图5是本申请一示例性实施例示出的运行日志记录得到的实例信息的示意图。
图6是本申请一示例性实施例示出的确定调用函数的代码示意图。
图7是本申请一示例性实施例示出的登录模块涉及的封装代码示意图。
图8是本申请一示例性实施例示出的接口请求的调用装置的结构示意图。
图9是本申请的一示例性实施例示出的电子设备的计算机系统的结构示意图。
具体实施方式
这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
在本申请中提及的“多个”是指两个或者两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
现有自动化测试的方法需要加上异常机制+log,致使常规代码篇幅较长,针对每一个接口都需要书写代码,其中存在多个重复代码,致使测试过程的可维护性差,不利于扩展。同时,因为代码复杂,从而导致接口调用速度缓慢。
为此,本申请的一方面提供了一种接口请求的调用方法。具体请参阅图1,图1是本申请一示例性实施例示出的一种接口请求的调用方法的流程示意图。该调用方法至少包括S110至S130,详细介绍如下:
S110:获取目标接口所属业务模块的模块名称,以及目标接口的接口名称。
示例性地,A业务模块中包括a接口和b接口,B业务模块中包括c接口和d接口;若目标接口为a接口,则目标接口所属的业务模块的名称为A,目标接口名称为a。
S120:根据模块名称和接口名称,从预设配置文件中获取到目标数据;其中;目标数据中包括目标接口对应的目标方法和目标路径,预设配置文件中包括各个业务模块下属的多个接口对应的方法和路径。
针对各个接口来说,把发送请求基本的操作写出来,各个业务模块直接调用底层的发送请求的方法,除此之外,若接口数量较多,每个接口都需要传入必填的url(UniformResource Locator,统一资源定位符)和method(方法),将导致后期维护量巨大,本实施例采用文件配置的方式将各个接口的path(路径)和method(方法)存储至预设配置文件中,例如yaml文件。同时,本实施例执行主体可根据模块名称和接口名称快速定位到目标接口对应的目标数据。
示例性地,创建一个命名为utils的包,在utils包中创建handle_yml.py文件,handle_yml.py文件中定义一个函数方法get_yml_data,用来读取yml文件中的数据,本实施例主要用来读取apiPathConfig.yml配置文件中的数据,apiPathConfig.yml配置文件中根据接口来写具体的url和method。
在一示例性实施例中,根据业务模块,接口,以及接口对应的方法和路径之间的关系,构建出了它们之间的数据层级顺序,即在基于S110至S130的基础上,调用方法还包括S11至S12,详细说明如下:
S11:将每个接口隶属的业务模块作为相应接口的父节点,并将每个接口对应的方法和路径作为相应接口的子节点,以得到数据层级顺序。
数据层级顺序:业务模块>接口>接口方法=接口路径。
S12:根据数据层级顺序将每个业务模块中的各个接口,以及各个接口对应的方法和路径存储至预设配置文件中。
示例性地,创建一个命名为config的包,config包用于存放各种配置文件,例如将上述apiPathConfig.yml配置文件存放在config包中,apiPathConfig.yml配置文件中写明业务模块,每个业务模块下写出各个接口以及每个接口对应的path和method。如图2所示,图2是本申请一示例性实施例示出的登录业务模块下属接口及接口相关数据的示意图。其中,Login为登录业务模块,login为登录接口,method为登录接口对应的方法,path为登录接口对应的路径(用于生成登录接口对应的url),以方便根据业务模块名称和接口名称,快速定位到响应的接口方法和接口路径。
S130:根据目标方法和目标路径,生成目标接口对应的调用请求。
在某些实施例中,还需要引入其它参数或对基础参数进行进一步的处理,以生成目标接口对应的调用请求。
本实施例根据目标接口所属业务模块的模块名称,以及目标接口的接口名称,从预设配置文件中获取到目标接口对应的目标方法和目标路径;其中,预设配置文件中预先存储有各个业务模块下属的多个接口对应的方法和路径。无需为各个接口预先配置相应的代码,避免书写多个重复代码,以避免增加维护负担,从而提高了可维护性和可扩展性。同时,根据目标方法和目标路径,快速生成目标接口对应的调用请求。
在本申请另一示例性实施例中,详细介绍了构建了一种获取子类的类名的方式,在如图1所示调用方法的基础上,进一步包括S13,详细介绍如下:
S13:在预设基类中构建得到用于获取子类的类名的预设属性,以使预设属性将模块名称转化为子类,以及将接口名称转化为子类的类名。
示例性地,创建一个包common,common中创建baseApi.py文件,在该文件中创建BaseApi类进行基类封装,构造方法中还要创建一个属性self.data用来获取子类的类名。
上述构造方法中可加一个token(令牌)缺省值用来判断是否要在请求头中添加token值,目前的接口中除了登录业务模块之外的其它业务模块皆需要传token。即在另一示例性实施例中,上述调用方法还包括S14至S15,详细介绍如下:
S14:检测令牌是否为空值。
S15:若不为空值,则将令牌对应的参数插入请求头部数据中。
如图3所示,图3是本申请一示例性实施例示出的获取子类的类名的代码示意图。其中,若检测到令牌不为None,则将令牌相关的参数插入请求头部数据中;若检测到令牌为None(空值),则无需在请求头部数据中加入令牌。
[self.__calss__.__name__]方法中的self代表子类,__calss__.__name__代表子类的类名,具体来说,这里的self由哪一个子类继承BaseApi这个基类,self就是哪个子类的实例对象;本实施例采用get_yml_data方法读取出来的apiPathConfig.yml配置文件中数据的格式如下:{‘Login’:{‘login’:{‘method’:‘POST’,‘path’:‘/iam-service/v0/public/acounts/account-login’}}}
其中,Login和login分别为业务模块名和接口名,同时也可以作为接口自动化框架业务层中所封装的,用来继承基类的公共请求方法中的子类和子类的类名。
在本申请另一示例性实施例中,介绍了如何根据目标方法和目标路径,生成目标接口对应的调用请求,即上述S130中进一步包括S1301至S1302,详细介绍如下:
S1301:根据目标接口的路径标识参数和目标路径,确定出目标接口对应的目标统一资源定位符。
示例性地,将目标接口的id(路径标识参数)和path(路径)输入预设函数,预设函数输出目标接口对应的url(统一资源定位符)。
S1302:根据目标统一资源定位符,目标方法和请求头部数据,生成目标接口对应的调用请求。
示例性地,如图4所示,图4是本申请一示例性实施例示出的生成接口对应调用请求的代码示意图。其中,定义了一个公共发送方法,用于兼容所有接口的请求,采用__config_data=self.data[inspect.stack()[1][3]]的方法,从各个业务模块中获取相应接口的method和url。具体地,根据相应接口的path和id生成url。同时,根据method,url和headers,生成相应接口对应的调用请求。
本实施例基类中发送的公共请求方法不需要写出所有发送请求时用到的参数,采用**kwargs的格式能兼容所有的请求,并考虑到有的接口中存在id(路径标识参数),故在request_send方法中将id写成缺省值的形式(id=”),减少所需配置的代码,同时无需进行检测id是否有无的检测步骤,提高了整个调用过程的效率。
在本申请另一示例性实施例中,还结合try异常机制和log日志用来确定子类是否继承基类,并记录发送调用请求时的信息。即在上述任一示例性实施例所述的调用方法中,还包括S140至S150,详细介绍如下:
S140:记录运行日志,并获取运行日志中的当前实例信息。
当前实例信息是运行日志实时记录得到的信息,当前实例信息可在生成调用请求的同时,或者生成调用请求后,即刻记录实例信息。
S150:根据当前实例信息确定当前子类是否继承预设基类。
本实施例可根据相关信息的匹配结果确定当前子类是否继承预设基类。
结合图5对本实施例进行示例性说明,图5是本申请一示例性实施例示出的运行日志记录得到的实例信息的示意图。其中,实例信息包括f”’业务、接口、请求url、请求body,请求method和响应数据。
在本申请另一示例性实施例中,介绍了如何根据运行日志记载的信息,确定当前子类是否继承预设基类,即上述S150中进一步包括S1501至S1502,详细介绍如下:
S1501:检测当前实例信息是否与隶属于预设基类的预设实例信息相匹配;其中,当前实例信息包括当前子类和当前子类的当前类名。
S1502:若匹配结果表征当前子类与模块名称相匹配,并且当前类名与接口名称相匹配,则确定当前子类继承预设基类。
示例性地,请参阅图5中f”’业务:{[self.__calss__.__name__]},其中,self代表当前子类,__calss__.__name__代表当前子类的当前类名;self由哪一个子类继承BaseApi这个基类,self就是哪个子类的实例对象。分别将它们与预设实例信息中预设子类,以及预设子类的预设类名进行匹配操作,若皆匹配成功,则确定当前子类继承预设基类。
另外,由于每个接口都会去调用request_send发送请求,于是可以获取到调用了执行函数的调用函数(调用执行函数的函数),并获取到对应的函数名,如图6所示,图6是本申请一示例性实施例示出的确定调用函数的代码示意图。其中,可利用如图5所示的inspect.stack()[1][3]的方法就可以获取到执行函数被哪个调用函数所调用。
另外,本申请上述各个调用方法中,还可涉及业务模块的封装过程。示例性地,创建libs包,libs包中用来封装各个业务模块。以登录模块为例,结合图7,图7是本申请一示例性实施例示出的登录模块涉及的封装代码示意图。创建Login.py文件,然后从common中导入基类BaseApi,Login.py文件创建子类Login,并继承基类。该子类中封装登录方法login,方法中传入参数然后调用公共请求方法。
本申请的另一方面还提供了一种接口请求的调用装置,如图8所示,图8是本申请一示例性实施例示出的接口请求的调用装置的结构示意图。调用装置800包括:
获取模块810,用于获取目标接口所属业务模块的模块名称,以及目标接口的接口名称。
目标数据模块830,用于根据模块名称和接口名称,从预设配置文件中获取到目标数据;其中;目标数据中包括目标接口对应的目标方法和目标路径,预设配置文件中包括各个业务模块下属的多个接口对应的方法和路径。
调用模块850,用于根据目标方法和目标路径,生成目标接口对应的调用请求。
在一种可选的方式中,调用装置800还包括:
预设属性构建模块,用于在预设基类中构建得到用于获取子类的类名的预设属性,以使预设属性将模块名称转化为子类,以及将接口名称转化为子类的类名。
在一种可选的方式中,调用装置800还包括:
检测模块,用于检测令牌是否为空值。
插入模块,用于若不为空值,则将令牌对应的参数插入请求头部数据中。
在一种可选的方式中,调用模块850进一步包括:
确定单元,用于根据目标接口的路径标识参数和目标路径,确定出目标接口对应的目标统一资源定位符。
生成单元,用于根据目标统一资源定位符,目标方法和请求头部数据,生成目标接口对应的调用请求。
在一种可选的方式中,调用装置800还包括:
记录模块,用于记录运行日志,并获取运行日志中的当前实例信息。
继承确定模块,用于根据当前实例信息确定当前子类是否继承预设基类。
在一种可选的方式中,继承确定模块进一步包括:
匹配单元,用于检测当前实例信息是否与隶属于预设基类的预设实例信息相匹配;其中,当前实例信息包括当前子类和当前子类的当前类名。
匹配成功单元,用于若匹配结果表征当前子类与模块名称相匹配,并且当前类名与接口名称相匹配,则确定当前子类继承预设基类。
在一种可选的方式中,调用装置800还包括:
数据层级顺序确定模块,用于将每个接口隶属的业务模块作为相应接口的父节点,并将每个接口对应的方法和路径作为相应接口的子节点,以得到数据层级顺序。
存储模块,用于根据数据层级顺序将每个业务模块中的各个接口,以及各个接口对应的方法和路径存储至预设配置文件中。
本申请调用装置根据目标接口所属业务模块的模块名称,以及目标接口的接口名称,从预设配置文件中获取到目标接口对应的目标方法和目标路径;其中,预设配置文件中预先存储有各个业务模块下属的多个接口对应的方法和路径。无需为各个接口预先配置相应的代码,避免书写多个重复代码,以避免增加维护负担,从而提高了可维护性和可扩展性。同时,根据目标方法和目标路径,快速生成目标接口对应的调用请求。
需要说明的是,上述实施例所提供的调用装置与前述实施例所提供的调用方法属于同一构思,其中各个模块和单元执行操作的具体方式已经在方法实施例中进行了详细描述,这里不再赘述。
本申请的另一方面还提供了一种电子设备,包括:控制器;存储器,用于存储一个或多个程序,当一个或多个程序被控制器执行时,以执行上述的调用方法。
请参阅图9,图9是本申请的一示例性实施例示出的电子设备的计算机系统的结构示意图,其示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
需要说明的是,图9示出的电子设备的计算机系统900仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图9所示,计算机系统900包括中央处理单元(Central Processing Unit,CPU)901,其可以根据存储在只读存储器(Read-Only Memory,ROM)902中的程序或者从存储部分908加载到随机访问存储器(Random Access Memory,RAM)903中的程序而执行各种适当的动作和处理,例如执行上述实施例中的方法。在RAM 903中,还存储有系统操作所需的各种程序和数据。CPU 901、ROM 902以及RAM 903通过总线904彼此相连。输入/输出(Input/Output,I/O)接口905也连接至总线904。
以下部件连接至I/O接口905:包括键盘、鼠标等的输入部分906;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分907;包括硬盘等的存储部分908;以及包括诸如LAN(Local Area Network,局域网)卡、调制解调器等的网络接口卡的通信部分909。通信部分909经由诸如因特网的网络执行通信处理。驱动器910也根据需要连接至I/O接口905。可拆卸介质911,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器910上,以便于从其上读出的计算机程序根据需要被安装入存储部分908。
特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的计算机程序。在这样的实施例中,该计算机程序可以通过通信部分909从网络上被下载和安装,和/或从可拆卸介质911被安装。在该计算机程序被中央处理单元(CPU)901执行时,执行本申请的系统中限定的各种功能。
需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不相同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
本申请的另一方面还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如前的调用方法。该计算机可读存储介质可以是上述实施例中描述的电子设备中所包含的,也可以是单独存在,而未装配入该电子设备中。
本申请的另一方面还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各个实施例中提供的调用方法。
根据本申请实施例的一个方面,还提供了一种计算机系统,包括中央处理单元(Central Processing Unit,CPU),其可以根据存储在只读存储器(Read-Only Memory,ROM)中的程序或者从存储部分加载到随机访问存储器(Random Access Memory,RAM)中的程序而执行各种适当的动作和处理,例如执行上述实施例中的方法。在RAM中,还存储有系统操作所需的各种程序和数据。CPU、ROM以及RAM通过总线彼此相连。输入/输出(Input/Output,I/O)接口也连接至总线。
以下部件连接至I/O接口:包括键盘、鼠标等的输入部分;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分;包括硬盘等的存储部分;以及包括诸如LAN(Local Area Network,局域网)卡、调制解调器等的网络接口卡的通信部分。通信部分经由诸如因特网的网络执行通信处理。驱动器也根据需要连接至I/O接口。可拆卸介质,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器上,以便于从其上读出的计算机程序根据需要被安装入存储部分。
上述内容,仅为本申请的较佳示例性实施例,并非用于限制本申请的实施方案,本领域普通技术人员根据本申请的主要构思和精神,可以十分方便地进行相应的变通或修改,故本申请的保护范围应以权利要求书所要求的保护范围为准。

Claims (10)

1.一种接口请求的调用方法,其特征在于,所述调用方法包括:
获取目标接口所属业务模块的模块名称,以及所述目标接口的接口名称;
根据所述模块名称和所述接口名称,从预设配置文件中获取到目标数据;其中;所述目标数据中包括所述目标接口对应的目标方法和目标路径,所述预设配置文件中包括各个业务模块下属的多个接口对应的方法和路径;
根据所述目标方法和所述目标路径,生成所述目标接口对应的调用请求。
2.根据权利要求1所述的调用方法,其特征在于,在所述根据所述模块名称和所述接口名称,从预设配置文件中获取到目标数据之前,所述调用方法还包括:
在预设基类中构建得到用于获取子类的类名的预设属性,以使所述预设属性将所述模块名称转化为子类,以及将所述接口名称转化为所述子类的类名。
3.根据权利要求2所述的调用方法,其特征在于,所述调用方法还包括:
检测令牌是否为空值;
若不为空值,则将所述令牌对应的参数插入请求头部数据中。
4.根据权利要求3所述的调用方法,其特征在于,所述根据所述目标方法和所述目标路径,生成所述目标接口对应的调用请求,进一步包括:
根据所述目标接口的路径标识参数和所述目标路径,确定出所述目标接口对应的目标统一资源定位符;
根据所述目标统一资源定位符,所述目标方法和所述请求头部数据,生成所述目标接口对应的调用请求。
5.根据权利要求1所述的调用方法,其特征在于,在所述根据所述目标方法和所述目标路径,生成所述目标接口对应的调用请求之后,所述调用方法还包括:
记录运行日志,并获取所述运行日志中的当前实例信息;
根据当前实例信息确定当前子类是否继承预设基类。
6.根据权利要求5所述的调用方法,其特征在于,所述根据当前实例信息确定当前子类是否继承预设基类,进一步包括:
检测当前实例信息是否与隶属于所述预设基类的预设实例信息相匹配;其中,当前实例信息包括当前子类和当前子类的当前类名;
若匹配结果表征当前子类与所述模块名称相匹配,并且当前类名与所述接口名称相匹配,则确定当前子类继承所述预设基类。
7.根据权利要求1至6中任一项所述的调用方法,其特征在于,在所述根据所述模块名称和所述接口名称,从预设配置文件中获取到目标数据之前,所述调用方法还包括:
将每个接口隶属的业务模块作为相应接口的父节点,并将每个接口对应的方法和路径作为相应接口的子节点,以得到数据层级顺序;
根据所述数据层级顺序将每个业务模块中的各个接口,以及各个接口对应的方法和路径存储至所述预设配置文件中。
8.一种接口请求的调用装置,其特征在于,所述调用装置包括:
获取模块,用于获取目标接口所属业务模块的模块名称,以及所述目标接口的接口名称;
目标数据模块,用于根据所述模块名称和所述接口名称,从预设配置文件中获取到目标数据;其中;所述目标数据中包括所述目标接口对应的目标方法和目标路径,所述预设配置文件中包括各个业务模块下属的多个接口对应的方法和路径;
调用模块,用于根据所述目标方法和所述目标路径,生成所述目标接口对应的调用请求。
9.一种电子设备,其特征在于,包括:
控制器;
存储器,用于存储一个或多个程序,当一个或多个程序被控制器执行时,使得控制器实现权利要求1至7中任一项所述的调用方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机可读指令,当计算机可读指令被计算机的处理器执行时,使计算机执行权利要求1至7中任一项所述的调用方法。
CN202311434991.XA 2023-10-31 2023-10-31 一种接口请求的调用方法、装置及计算机可读存储介质 Pending CN117349049A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311434991.XA CN117349049A (zh) 2023-10-31 2023-10-31 一种接口请求的调用方法、装置及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311434991.XA CN117349049A (zh) 2023-10-31 2023-10-31 一种接口请求的调用方法、装置及计算机可读存储介质

Publications (1)

Publication Number Publication Date
CN117349049A true CN117349049A (zh) 2024-01-05

Family

ID=89362979

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311434991.XA Pending CN117349049A (zh) 2023-10-31 2023-10-31 一种接口请求的调用方法、装置及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN117349049A (zh)

Similar Documents

Publication Publication Date Title
CN108897691B (zh) 基于接口模拟服务的数据处理方法、装置、服务器和介质
US20070192700A1 (en) Support of remote software applications
CN109635019B (zh) 请求处理方法、装置、设备及存储介质
US20170187782A1 (en) Telemetry response system
US11386061B2 (en) Telemetry request system
CN108139961A (zh) 遥测定义系统
CN107092535B (zh) 用于测试接口的数据存储的方法及设备
CN104903863A (zh) 用于虚拟环境的控制反转组件服务模型
CN109104368B (zh) 一种请求连接方法、装置、服务器及计算机可读存储介质
CN108139962A (zh) 遥测系统扩展
CN116204438A (zh) 测试用例生成方法、自动化测试方法和相关装置
CN113553260B (zh) 测试方法、测试装置、设备和介质
CN113836014A (zh) 一种接口测试方法、装置、电子设备和存储介质
CN109218338B (zh) 信息处理系统、方法和装置
CN108496157B (zh) 使用扩展接口提供运行时跟踪的系统和方法
CN117349049A (zh) 一种接口请求的调用方法、装置及计算机可读存储介质
CN115277657B (zh) 一种数据库协议运维的方法及设备
US20090172012A1 (en) Methodology to derive enterprise relationships for generating a topology view in a SOA environment
CN113852610B (zh) 报文处理方法、装置、计算机设备和存储介质
CN115934378A (zh) 业务数据处理方法、装置、电子设备和存储介质
CN111143310A (zh) 日志记录方法及装置、可读存储介质
CN114884804A (zh) 基于微服务的多渠道信息隔离方法、装置和计算机设备
CN114546370A (zh) 一种数据对接方法及相关装置
CN116560756B (zh) 服务编排方法、电子设备、计算机可读存储介质
WO2023230797A1 (zh) 一种跨系统测试方法及装置

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