CN105446714B - 接口调用方法和装置 - Google Patents

接口调用方法和装置 Download PDF

Info

Publication number
CN105446714B
CN105446714B CN201410400321.0A CN201410400321A CN105446714B CN 105446714 B CN105446714 B CN 105446714B CN 201410400321 A CN201410400321 A CN 201410400321A CN 105446714 B CN105446714 B CN 105446714B
Authority
CN
China
Prior art keywords
interface
interfaces
data
message
client
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.)
Active
Application number
CN201410400321.0A
Other languages
English (en)
Other versions
CN105446714A (zh
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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201410400321.0A priority Critical patent/CN105446714B/zh
Priority to PCT/CN2015/085911 priority patent/WO2016023425A1/zh
Publication of CN105446714A publication Critical patent/CN105446714A/zh
Application granted granted Critical
Publication of CN105446714B publication Critical patent/CN105446714B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/44Arrangements for executing specific programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本申请提出一种接口调用方法和装置,该接口调用方法包括根据预设的第一接口的接口信息,调用所述第一接口;接收所述第一接口返回的其他接口的接口信息;根据所述其他接口的接口信息调用所述其他接口。该方法能够提高接口调用的灵活性。

Description

接口调用方法和装置
技术领域
本申请涉及通信技术领域,尤其涉及一种接口调用方法和装置。
背景技术
在客户端需要展示某个页面或完成某个功能时,可能需要调用多个接口从服务端获取数据。现有技术中,在客户端中预先固定要调用的多个接口的信息,客户端根据固定的接口信息去调用多个接口。
但是,这种方式是将接口信息固定在客户端中,调用方式不灵活。
发明内容
本申请旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本申请的一个目的在于提出一种接口调用方法,该方法可以提高接口调用的灵活性。
本申请的另一个目的在于提出一种接口调用装置。
为达到上述目的,本申请第一方面实施例提出的接口调用方法,包括:根据预设的第一接口的接口信息,调用所述第一接口;接收所述第一接口返回的其他接口的接口信息;根据所述其他接口的接口信息调用所述其他接口。
本申请第一方面实施例提出的接口调用方法,通过在调用第一接口时返回其他接口的接口信息,而不是将其他接口的接口信息固定配置,可以实现接口的灵活调用。
为达到上述目的,本申请第二方面实施例提出的接口调用装置,包括:第一调用模块,用于根据预设的第一接口的接口信息,调用所述第一接口;第一接收模块,用于接收所述第一接口返回的其他接口的接口信息;第二调用模块,用于根据所述其他接口的接口信息调用所述其他接口。
本申请第二方面实施例提出的接口调用装置,通过在调用第一接口时返回其他接口的接口信息,而不是将其他接口的接口信息固定配置,可以实现接口的灵活调用。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1是本申请一实施例提出的接口调用方法的流程示意图;
图2是本申请另一实施例提出的接口调用方法的流程示意图;
图3是本申请另一实施例提出的接口调用装置的结构示意图;
图4是本申请另一实施例提出的接口调用装置的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能理解为对本申请的限制。相反,本申请的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。
图1是本申请一实施例提出的接口调用方法的流程示意图,该方法包括:
S11:根据预设的第一接口的接口信息,调用所述第一接口。
其中,第一接口用于提供其他接口的信息,其他接口用于提供客户端所需的数据。
客户端中可以预先配置第一接口的接口信息,接口信息包括:接口名称、版本号、调用方式等。
客户端根据该预先配置的接口信息,可以向服务端调用第一接口。
S12:接收所述第一接口返回的其他接口的接口信息。
其中,服务端可以预先配置第一接口中提供的接口信息,例如,服务端预先配置第一接口中提供的接口信息包括接口A的接口信息和接口B的接口信息,那么当客户端向服务端调用第一接口后,第一接口向客户端返回接口A的接口信息和接口B的接口信息。
S13:根据所述其他接口的接口信息调用所述其他接口。
当客户端接收到其他接口的接口信息后,可以分别根据其他接口的接口信息调用相应的接口,例如,根据接口A的接口信息调用接口A,根据接口B的接口信息调用接口B。
本实施例通过在调用第一接口时返回其他接口的接口信息,而不是将其他接口的接口信息固定配置,可以实现接口的灵活调用。
图2是本申请另一实施例提出的接口调用方法的流程示意图。
本实施例以客户端获取商品详情页为例进行说明。由于商品详情页需要展示的数据量非常大,随着业务的发展,商品详情页所需的数据是由多个接口提供的。例如,商品详情页需要宝贝标题、价格、运费、店铺等信息,假设接口A提供宝贝、店铺、图文等信息,接口B提供价格、运费等信息,接口C提供聚划算等信息。现有技术中,客户端会固定配置接口A、接口B和接口C的接口信息,之后分别调用接口A、接口B和接口C,再由接口A返回宝贝、店铺、图文等信息,由接口B返回价格、运费等信息,由接口C返回聚划算等信息。这种固定方式不够灵活,例如,当宝贝、店铺、图文等信息由接口D提供后,需要修改客户端,将接口A的接口信息修改为接口D的接口信息。
为了解决现有技术存在的问题,本实施例提供的方法可以包括:
S21:客户端根据预设的第一接口的接口信息,调用所述第一接口。
第一接口的接口信息可以预先配置在客户端中,接口信息包括:接口名称、版本号和调用方式等,调用方式包括调用时采用的具体协议,例如超文本传输协议(Hypertexttransfer protocol,HTTP)或者无线接口协议等。
S22:客户端接收服务端的第一接口返回的其他接口的信息。
其中,服务端可以预先配置第一接口提供的信息,例如,预先配置第一接口提供的信息包括:接口A的接口信息、接口B的接口信息和接口C的接口信息,那么,客户端将接收接口A的接口信息、接口B的接口信息和接口C的接口信息。
S23:客户端根据其他接口的接口信息,分别调用其他接口。
例如,根据接口A的接口信息向服务端调用接口A,根据接口B的接口信息向服务端调用接口B,根据接口C的接口信息向服务端调用接口C。
S24:客户端接收每个其他接口返回的数据。
其中,服务端可以预先配置每个接口返回的数据,例如,配置接口A提供宝贝、店铺、图文等信息,接口B提供价格、运费等信息,接口C提供聚划算等信息,那么客户端将接收接口A返回的宝贝、店铺、图文等信息,客户端将接收接口B返回的价格、运费等信息,客户端将接收接口C返回的聚划算等信息。
可以理解的是,调用每个其他接口的顺序可以预先设置,例如,在第一接口返回的信息中不仅包含每个其他接口的接口信息还包括其他接口的调用顺序;或者,调用每个其他接口的顺序也可以随机,相应的,上述调用每个其他接口的时序以及相应其他接口返回的数据无时序限制关系。
S25:客户端对其他接口返回的数据进行合并。
其中,服务端可以预先配置每个其他接口提供的数据具有相同的数据格式,即,每个其他接口提供的数据具有相同的字段,但是,由于不同接口提供的数据不同,因此,其他接口向客户端返回的数据中可以存在空的字段。例如,三个其他接口都包含3个字段,但第一个接口中只第一个字段有数值,另两个字段是空;第二个接口中只第二个字段有数值,另两个字段是空,第三个接口只第三个字段有数值,另两个字段是空。
这样,当客户端接收到不同接口返回的相同格式的数据后,可以对数据进行合并,合并时可以用有数值的字段覆盖空字段,得到客户端所需数据,例如,客户端得到包含第一个字段、第二个字段和第三个字段的数据,且第一个字段的数值是第一个接口返回的数据中第一个字段的数值,第二个字段是第二个接口返回的数据中第二个字段的数值,第三个字段是第三个接口返回的数据中第三个字段的数值。
进一步的,当提供客户端所需数据的接口改变时,服务端可以对第一接口提供的接口信息进行修改,以便客户端从修改后的接口获取所需数据。即,本实施例还可以包括:
S26:服务端对第一接口提供的接口信息进行修改。
具体的,当提供第一数据的接口修改后,服务端可以对提供第一数据的接口的接口信息进行修改。例如,当接口A的名称改变或者版本改变时,服务端可以在第一接口提供的接口信息中对接口A的名称或版本号进行修改,或者,提供宝贝、店铺、图文等信息的接口由接口A修改为接口D,那么服务端可以在第一接口提供的接口信息中将接口A的接口信息修改为接口D的接口信息。
在服务端进行修改后,可以重复执行上述的S21-S25,客户端可以从修改后的接口中获取所需数据。
本实施例通过在调用第一接口时返回其他接口的接口信息,而不是将其他接口的接口信息固定配置,可以实现接口的灵活调用。本实施例通过每个其他接口提供的数据具有相同的数据格式,可以方便对接收的数据进行整合,实现获取所需数据的简便性和准确性。本实施例通过第一接口提供其他接口的信息,可以在其他接口修改后仅需要在服务端进行修改,客户端不需要修改相应的接口信息,降低客户端的操作要求。
图3是本申请另一实施例提出的接口调用装置的结构示意图,该装置30包括第一调用模块31、第一接收模块32和第二调用模块33。
第一调用模块31用于根据预设的第一接口的接口信息,调用所述第一接口;
其中,第一接口用于提供其他接口的信息,其他接口用于提供客户端所需的数据。
客户端中可以预先配置第一接口的接口信息,接口信息包括:接口名称、版本号、调用方式等。
客户端根据该预先配置的接口信息,可以向服务端调用第一接口。
第一接收模块32用于接收所述第一接口返回的其他接口的接口信息;
其中,服务端可以预先配置第一接口中提供的接口信息,例如,服务端预先配置第一接口中提供的接口信息包括接口A的接口信息和接口B的接口信息,那么当客户端向服务端调用第一接口后,第一接口向客户端返回接口A的接口信息和接口B的接口信息。
第二调用模块33用于根据所述其他接口的接口信息调用所述其他接口。
当客户端接收到其他接口的接口信息后,可以分别根据其他接口的接口信息调用相应的接口,例如,根据接口A的接口信息调用接口A,根据接口B的接口信息调用接口B。
参见图4,另一实施例中,该装置还可以包括第二接收模块34,第二接收模块34用于接收所述其他接口返回的数据。
其中,服务端可以预先配置每个接口返回的数据,例如,配置接口A提供宝贝、店铺、图文等信息,接口B提供价格、运费等信息,接口C提供聚划算等信息,那么客户端将接收接口A返回的宝贝、店铺、图文等信息,客户端将接收接口B返回的价格、运费等信息,客户端将接收接口C返回的聚划算等信息。
可以理解的是,调用每个其他接口的顺序可以预先设置,例如,在第一接口返回的信息中不仅包含每个其他接口的接口信息还包括其他接口的调用顺序;或者,调用每个其他接口的顺序也可以随机,相应的,上述调用每个其他接口的时序以及相应其他接口返回的数据无时序限制关系。
一个实施例中,所述第二接收模块接收的所述其他接口返回的数据具有相同的数据格式。
一个实施例中,每个其他接口返回的数据是所需数据的一部分,所述装置30还包括:合并模块35,用于对所述其他接口返回的数据进行合并。
其中,服务端可以预先配置每个其他接口提供的数据具有相同的数据格式,即,每个其他接口提供的数据具有相同的字段,但是,由于不同接口提供的数据不同,因此,其他接口向客户端返回的数据中可以存在空的字段。例如,三个其他接口都包含3个字段,但第一个接口中只第一个字段有数值,另两个字段是空;第二个接口中只第二个字段有数值,另两个字段是空,第三个接口只第三个字段有数值,另两个字段是空。
这样,当客户端接收到不同接口返回的相同格式的数据后,可以对数据进行合并,合并时可以用有数值的字段覆盖空字段,得到客户端所需数据,例如,客户端得到包含第一个字段、第二个字段和第三个字段的数据,且第一个字段的数值是第一个接口返回的数据中第一个字段的数值,第二个字段是第二个接口返回的数据中第二个字段的数值,第三个字段是第三个接口返回的数据中第三个字段的数值。
一个实施例中,当提供第一数据的接口修改后,所述第一接收模块接收的其他接口的接口信息中包含修改后的提供第一数据的接口的接口信息。
具体的,当提供第一数据的接口修改后,服务端可以对提供第一数据的接口的接口信息进行修改。例如,当接口A的名称改变或者版本改变时,服务端可以在第一接口提供的接口信息中对接口A的名称或版本号进行修改,或者,提供宝贝、店铺、图文等信息的接口由接口A修改为接口D,那么服务端可以在第一接口提供的接口信息中将接口A的接口信息修改为接口D的接口信息。
在服务端进行修改后,可以重复执行上述步骤,客户端可以从修改后的接口中获取所需数据。
本实施例通过在调用第一接口时返回其他接口的接口信息,而不是将其他接口的接口信息固定配置,可以实现接口的灵活调用。本实施例通过每个其他接口提供的数据具有相同的数据格式,可以方便对接收的数据进行整合,实现获取所需数据的简便性和准确性。本实施例通过第一接口提供其他接口的信息,可以在其他接口修改后仅需要在服务端进行修改,客户端不需要修改相应的接口信息,降低客户端的操作要求。
需要说明的是,在本申请的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本申请的描述中,除非另有说明,“多个”的含义是两个或两个以上。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (6)

1.一种接口调用方法,其特征在于,包括:
根据预设的第一接口的接口信息,调用所述第一接口,所述第一接口用于提供其他接口的信息,所述其他接口用于提供客户端所需的数据;
接收所述第一接口返回的其他接口的接口信息;
根据所述其他接口的接口信息调用所述其他接口;
所述根据所述其他接口的接口信息调用所述其他接口之后,所述方法还包括:
接收所述其他接口返回的数据;
其中,每个其他接口返回的数据是所需数据的一部分,所述方法还包括:对所述其他接口返回的数据进行合并,对数据进行合并时,用有数值的字段覆盖空字段,得到客户端所需的数据。
2.根据权利要求1所述的方法,其特征在于,所述其他接口返回的数据具有相同的数据格式。
3.根据权利要求1至2任一项所述的方法,其特征在于,当提供第一数据的接口修改后,所述接收的其他接口的接口信息中包含修改后的提供第一数据的接口的接口信息。
4.一种接口调用装置,其特征在于,包括:
第一调用模块,用于根据预设的第一接口的接口信息,调用所述第一接口,所述第一接口用于提供其他接口的信息,所述其他接口用于提供客户端所需的数据;
第一接收模块,用于接收所述第一接口返回的其他接口的接口信息;
第二调用模块,用于根据所述其他接口的接口信息调用所述其他接口;
所述装置,还包括:
第二接收模块,用于接收所述其他接口返回的数据;
其中,每个其他接口返回的数据是所需数据的一部分,所述装置还包括:
合并模块,用于对所述其他接口返回的数据进行合并,对数据进行合并时,用有数值的字段覆盖空字段,得到客户端所需的数据。
5.根据权利要求4所述的装置,其特征在于,所述第二接收模块接收的所述其他接口返回的数据具有相同的数据格式。
6.根据权利要求4至5任一项所述的装置,其特征在于,当提供第一数据的接口修改后,所述第一接收模块接收的其他接口的接口信息中包含修改后的提供第一数据的接口的接口信息。
CN201410400321.0A 2014-08-14 2014-08-14 接口调用方法和装置 Active CN105446714B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201410400321.0A CN105446714B (zh) 2014-08-14 2014-08-14 接口调用方法和装置
PCT/CN2015/085911 WO2016023425A1 (zh) 2014-08-14 2015-08-03 接口调用方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410400321.0A CN105446714B (zh) 2014-08-14 2014-08-14 接口调用方法和装置

Publications (2)

Publication Number Publication Date
CN105446714A CN105446714A (zh) 2016-03-30
CN105446714B true CN105446714B (zh) 2019-03-15

Family

ID=55303868

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410400321.0A Active CN105446714B (zh) 2014-08-14 2014-08-14 接口调用方法和装置

Country Status (2)

Country Link
CN (1) CN105446714B (zh)
WO (1) WO2016023425A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107888631A (zh) * 2016-09-28 2018-04-06 北京京东尚科信息技术有限公司 一种可配置组合的接口调用方法和装置
CN106649488B (zh) * 2016-09-30 2020-05-05 广东网金数据服务有限公司 多数据源交互接口的调用方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101400109A (zh) * 2007-09-30 2009-04-01 华为技术有限公司 通用业务开放接口系统和通用业务开放方法
CN101819526A (zh) * 2009-09-18 2010-09-01 华为技术有限公司 调用底层软件的方法、装置和嵌入式系统
CN103326887A (zh) * 2013-06-28 2013-09-25 迈普通信技术股份有限公司 一种接口管理方法及系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1279724C (zh) * 2003-02-17 2006-10-11 中国移动通信集团公司 网管接口信息采集控制点的系统及其控制方法
CN103150154B (zh) * 2011-12-07 2017-06-23 腾讯科技(深圳)有限公司 一种应用程序插件的实现方法及装置
US20140223364A1 (en) * 2013-02-06 2014-08-07 Miiicasa Taiwan Inc. Method and device for creating direct index of content
CN103294551A (zh) * 2013-06-05 2013-09-11 上海西本网络科技有限公司 接口调用管理方法和服务器

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101400109A (zh) * 2007-09-30 2009-04-01 华为技术有限公司 通用业务开放接口系统和通用业务开放方法
CN101819526A (zh) * 2009-09-18 2010-09-01 华为技术有限公司 调用底层软件的方法、装置和嵌入式系统
CN103326887A (zh) * 2013-06-28 2013-09-25 迈普通信技术股份有限公司 一种接口管理方法及系统

Also Published As

Publication number Publication date
CN105446714A (zh) 2016-03-30
WO2016023425A1 (zh) 2016-02-18

Similar Documents

Publication Publication Date Title
CN108089878B (zh) 页面信息展现和生成方法、装置及系统
CN103763337A (zh) 移动终端和服务器以及相应的方法
CN107404481B (zh) 用户信息识别方法及装置
CN107092652B (zh) 目标页面的导航方法及装置
CN105451043A (zh) 一种离线广告投放方法及装置
CN105446714B (zh) 接口调用方法和装置
CN102622237B (zh) 一种业务功能流程化的配置方法及系统
CN104731869B (zh) 页面的展现方法及装置
CN104683468A (zh) 失物找回方法、装置以及系统
CN107045413A (zh) 应用程序图标的显示方法和装置
CN109815421A (zh) 一种信息的生成方法、系统和装置
CN108897592A (zh) 一种软件展示方法及相关设备
CN104252541B (zh) 一种网页信息推送方法、数据服务器及终端
CN110865973A (zh) 一种数据处理方法及设备和相关装置
CN106294880B (zh) 多网站管理系统及其管理方法
CN109032693A (zh) 一种加载展示信息方法、装置、电子设备及可读存储介质
CN104683484A (zh) 移动终端以及基于移动终端的实体店信息化方法以及系统
CN106129636B (zh) 移动终端的gnss天线系统、移动终端及电子设备
CN104504107B (zh) 搜索图片的展示方法和装置
CN105450633B (zh) 一种文档上传方法、系统及解析服务器
CN105574757A (zh) 一种售货系统
EP2838248B1 (en) Display device, method of operating a display device, and computer program product
CN106294430A (zh) 页面展示方法和页面展示装置
CN104700122A (zh) 一种信息交互系统及方法
CN103139158B (zh) 业务指令的传输方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant