接口合并方法、设备、系统和计算机可读储存介质与流程

文档序号:15394917发布日期:2018-09-08 01:57阅读:302来源:国知局

本发明涉及通信技术领域,特别涉及接口合并方法、设备、系统和计算机可读储存介质。



背景技术:

为了提高客户端上应用的运行速度,可以通过路由器中继应用发起的接口调用请求,并且对接口调用请求进行合并。例如,当某些接口调用请求不带用户信息时,该接口的返回值通常为通用型的。即接口的返回值不会因为访问用户不同而不同。

因此,为了提高接口的并发效率,可以将来自不同用户发起的,不带有用户信息的接口调用请求进行合并,从而仅需要调用该接口一次,即可返回给所有调用该接口的返回值。

但是,在到达路由器的接口中,有不少都是带有用户信息的,在常用的处理方案中,由于每个用户的信息都不同,所以对于这类接口一般都不做合并处理,导致接口调用效率较低。



技术实现要素:

本发明的主要目的是接口合并方法、设备、系统和计算机可读储存介质,旨在提高接口调用效率。

为实现上述目的,本发明提出的一种接口合并方法,应用于路由器,所述接口合并方法包括:

路由器接收多个接口调用请求;

确定每一所述接口调用请求所对应的接口是否为与用户信息相关的相关接口;

将属于相关接口的所述接口调用请求进行合并请求操作,获得第一合并请求;

接收根据所述第一合并请求所返回的返回值,并且分别返回至对应的接口调用请求源。

可选的,所述确定每一所述接口调用请求所对应的接口是否为相关接口包括:

查找每一接口调用请求的内容;

在查找到与用户相关的第一标识时,确定所述接口调用请求为相关接口。

可选的,所述第一合并请求包括请求头信息,所述请求头信息中包括接口名称和关联保存的用户信息;其中,每一接口名称与请求调用该接口的所有用户信息关联保存。

本发明提供了一种接口合并设备,所述接口合并设备设置有存储器、处理器及存储在所述存储器上并可在所述处理器上运行的接口合并程序;

所述接口合并程序被所述处理器执行时实现如上述的方法的步骤。

本发明还提供了一种接口合并方法,应用于服务器,所述接口合并方法包括:

服务器接收到来自路由器的第一合并请求时,解析所述第一合并请求的请求头信息,获得每一接口名称和相关联的所有用户信息;

根据接口名称以及相关联的用户信息,对对应接口进行对应的调用;

在每次调用接口所获的返回值中添加对应用户信息的第二标识。

可选的,所述接口合并方法还包括:

服务器获得接口调用请求和对应接口返回的返回值,并且分析所获返回值是否与所述接口调用请求中的用户信息相关;

在确定返回值与接口调用请求中用户信息相关时,记录所述接口为相关接口,否则记录为通用接口;

将记录结果反馈至客户端。

可选的,所述将记录结果反馈至客户端包括:

在返回至客户端的接口调用请求的返回值中,添加标识所调用接口类型的第三标识。

本发明还提供一种接口合并设备,所述接口合并设备设置有存储器、处理器及存储在所述存储器上并可在所述处理器上运行的接口合并程序;

所述接口合并程序被所述处理器执行时实现如上述的方法的步骤。

本发明还提供了一种接口合并系统,包括:客户端、路由器和服务器;

所述客户端、路由器和服务器上各自设置有存储器、处理器及存储在所述存储器上并可在所述处理器上运行的接口合并程序;

所述接口合并程序被所述处理器执行时实现:

客户端在发起接口调用请求时,判断所调用接口是否为相关接口;在所调用的接口为相关接口时,在所述接口调用请求中添加与用户信息相关的第一标识;

路由器接收多个接口调用请求;确定每一所述接口调用请求所对应的接口是否为与用户信息相关的相关接口;将属于相关接口的所述接口调用请求进行合并请求操作,获得第一合并请求;接收根据所述第一合并请求所返回的返回值,并且分别返回至对应的接口调用请求源;

服务器的应用服务模块接收到来自路由器的第一合并请求时,解析所述第一合并请求的请求头信息,获得每一接口名称和相关联的所有用户信息;根据接口名称以及相关联的用户信息,对对应接口进行对应的调用;在每次调用接口所获的返回值中添加对应用户信息的第二标识;

服务器的分析服务模块获得接口调用请求和对应接口返回的返回值,并且分析所获返回值是否与所述接口调用请求中的用户信息相关;在确定返回值与接口调用请求中用户信息相关时,记录所述接口为相关接口,否则记录为通用接口;将记录结果反馈至客户端。

本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有接口合并程序,所述接口合并程序被处理器执行时实现如上述的接口合并程序的步骤。

本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有接口合并程序,所述接口合并程序被处理器执行时实现如上述的接口合并程序的步骤。

本发明所提供的接口合并方法、设备、系统和计算机可读存储介质,通过路由器接收多个接口调用请求;确定每一所述接口调用请求所对应的接口是否为与用户信息相关的相关接口;将属于相关接口的所述接口调用请求进行合并请求操作,获得第一合并请求;接收根据所述第一合并请求所返回的返回值,并且分别返回至对应的接口调用请求。实现了一种高效的接口合并方案,增强了携带用户信息的接口调用请求的传递效率和响应效率,使得在处理同一时间大量的接口调用请求时,能够大幅提高携带用户信息的接口调用请求整体响应速度。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。

图1为本发明接口合并方法第一实施例的流程图;

图2为应用图1所示接口合并方法的路由器的一过程图;

图3为本发明接口合并方法第二实施例的流程图;

图4为本发明接口合并方法第三实施例的流程图;

图5为本发明接口合并方法第四实施例的流程图;

图6为本发明接口合并方法第五实施例的流程图;

图7为本发明接口合并系统一实施例的构架示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

实施例一

图1是本发明接口合并方法第一实施例的流程图。一种接口合并方法,应用于路由器,所述接口合并方法包括:

步骤s101,路由器接收多个接口调用请求;

步骤s102,确定每一所述接口调用请求所对应的接口是否为与用户信息相关的相关接口;

步骤s103,将属于相关接口的所述接口调用请求进行合并请求操作,获得第一合并请求;

步骤s104,接收根据所述第一合并请求所返回的返回值,并且分别返回至对应的接口调用请求源。

在本实施例中,首先,路由器接收多个接口调用请求。具体的,路由器在同一时间段内,会接收到关于访问同一服务器上接口的大量接口调用请求。其中,很可能大量的接口调用请求中,包括带用户信息的接口调用请求和不带用户信息的接口调用请求。例如:接口调用请求包括接口1、接口2、接口3、接口3和接口4。其中接口1、接口3和接口4都带有用户信息;而接口2不带有用户信息。

进一步的,在本实施例中,路由器在接收到多个接口调用请求时,需要对每一接口调用请求进行区分,确定每一所述接口调用请求所对应的接口是否为与用户信息相关的相关接口。具体的,可以通过预先在接口调用请求中内置标识字符。例如在接口调用请求的内容中,增加一条信息,在协议层增加一条信息,该信息中描述了接口的类型,从而起到传递接口类型的作用。然后通过路由器来读取这些内置的标识字符,达到区分接口调用请求的效果。当然,还可以预先在路由器中设置接口关系对照表,然后在获得接口调用请求时,通过查表的方式区分接口调用请求的类型。

在本实施例中,确定每一所述接口调用请求所对应的接口是否为与用户信息相关的相关接口之后,将属于相关接口的所述接口调用请求进行合并请求操作,获得第一合并请求。具体的,接口调用请求中很可能包括对多个相关接口的调用,以及对多个通用接口的调用。关于通用接口的调用,可以一次调用,然后将接口的返回值返回到所有的请求源。但是,针对相关接口的调用,由于接口会对应不同的用户而反馈不同的返回值,因此对于相关接口只能分开调用。本实施例采用第一合并请求的来传输多个接口调用请求,因此,可以通过一次请求传递,代替现有的多次请求传递,从而提高相关请求的传递效率,以及服务器的响应效率。

此时,如何定义第一合并请求的格式,用以高效的传递该第一合并请求的内容,就至关重要。进一步的,本实施例中,所述第一合并请求包括请求头信息,所述请求头信息中包括接口名称和关联保存的用户信息;其中,每一接口名称与请求调用该接口的所有用户信息关联保存。例如,请参看图2,多个接口调用请求所包括的多个第一标识包括:

tag_应用a_接口3_用户名bj;

tag_应用a_接口3_用户25;和

tag_应用a_接口4_用户名23。

相应的第一合并请求的请求头信息为:

{接口名称:接口3,用户信息:{bj,25};接口名称:接口4,用户信息:{23}}。

服务器的应用服务模块收到带用户信息的第一合并请求后,对请求头进行解析,然后根据用户信息的个数,对对应的接口进行对应次数的调用。例如上述例子中,解析得到接口3有两个用户信息,则对接口3进行用户名bj的调用与用户名25的调用。

在本实施例中,获得第一合并请求之后,则将第一合并请求发送至应用服务模块,并且接收根据所述第一合并请求所返回的返回值。返回值可以采用分开的方式返回,当然,也可以将第一合并请求的所有返回值,打包为一个,或者打包为多个的方式返回。为了保证合并结果返回给路由器后,在路由器中会根据请求链接独立存在,从而保证来自客户端的接口调用请求能够根据对应链接立即得到返回值。每一返回值中都带有需要返回的目标信息,例如接口调用请求源所带的请求链接,如url1、url2等。

本实施例的有益效果在于,通过路由器接收多个接口调用请求;确定每一所述接口调用请求所对应的接口是否为与用户信息相关的相关接口;将属于相关接口的所述接口调用请求进行合并请求操作,获得第一合并请求;接收根据所述第一合并请求所返回的返回值,并且分别返回至对应的接口调用请求。实现了一种高效的接口合并方案,增强了携带用户信息的接口调用请求的传递效率和响应效率,使得在处理同一时间大量的接口调用请求时,能够大幅提高携带用户信息的接口调用请求整体响应速度。

实施例二,

图3是本发明接口合并方法第二实施例的流程图。基于第一实施例。所述步骤s102,确定每一所述接口调用请求所对应的接口是否为相关接口包括:

步骤s1021,查找每一接口调用请求的内容;

步骤s1022,在查找到与用户相关的第一标识时,确定所述接口调用请求为相关接口。即在每一接口调用请求标识的内容中增加标签。

在本实施例中,首先查找每一接口调用请求的内容;然后在查找到与用户相关的第一标识时,确定所述接口调用请求为相关接口。

具体的,在本实施例中,查找每一接口调用请求的内容。如上例所述,具体的,路由器在同一时间段内,会接收到关于访问同一应用服务模块上接口的大量接口调用请求。其中,很可能大量的接口调用请求中,包括带用户信息的接口调用请求和不带用户信息的接口调用请求。例如:接口调用请求包括接口1、接口2、接口3、接口3和接口4。其中接口1、接口3和接口4都带有用户信息;而接口2不带有用户信息。

进一步的,在本实施例中,路由器在接收到多个接口调用请求时,需要对每一接口调用请求进行区分,确定每一所述接口调用请求所对应的接口是否为与用户信息相关的相关接口。本实施例中,通过预先在接口调用请求中内置标识字符,然后通过路由器来读取这些内置的标识字符,达到区分接口调用请求的效果。

本实施例的有益效果在于,通过查找每一接口调用请求的内容;然后在查找到与用户相关的第一标识时,确定所述接口调用请求为相关接口。从而仅需要路由器识别接口调用请求标识本身,即可完成对接口调用请求的识别。而不需要在额外保存一个负载的接口关系对照表,从而再通过额外的对比对照表的流程,才能确定当前接口调用请求是否为相关请求。因此,本实施例具有路由器能够高效对接口调用请求进行分类的效果。

实施例三

图4是本发明接口合并方法第三实施例的流程图。本实施例中,接口合并方法应用于服务器。

所述接口合并方法包括:

步骤s201,服务器的应用服务模块接收到来自路由器的所述第一合并请求时,解析所述第一合并请求的请求头信息,获得每一接口名称和相关联的所有用户信息;

步骤s202,根据接口名称以及相关联的用户信息,对对应接口进行对应的调用;

步骤s203,在每次调用接口所获的返回值中添加对应用户信息的第二标识。

在本实施例中,客户端在启动和运行的过程中,会产生大量的接口调用请求。其中,包括带用户信息的接口调用请求和不带用户信息的接口调用请求。例如:接口调用请求包括接口1、接口2、接口3、接口3和接口4。其中接口1、接口3和接口4都带有用户信息;而接口2不带有用户信息。

路由器通过查找客户端的添加至接口调用请求中协议层的标识字符,达到区分接口调用请求类型的效果。然后路由器将相关接口进行合并为第一合并请求后,再发送至服务器的应用服务模块。

本实施例中,首先,应用服务模块接收到所述第一合并请求时,解析所述第一合并请求的请求头信息,获得每一接口名称和相关联的所有用户信息;然后,根据接口名称以及相关联的用户信息,对对应接口进行对应的调用;最后,在每次调用接口所获的返回值中添加对应用户信息的第二标识。

例如,请参看图2,多个接口调用请求所包括的多个第一标识包括:

tag_应用a_接口3_用户名bj;

tag_应用a_接口3_用户25;和

tag_应用a_接口4_用户名23。

相应的第一合并请求的请求头信息为:

{接口名称:接口3,用户信息:{bj,25};接口名称:接口4,用户信息:{23}}。

应用服务模块收到带用户信息的第一合并请求后,对请求头进行解析。此时获得接口包括接口3和接口4,其中,接口3相关联的用户信息为bj,25;接口4相关联的用户信息为23。然后,接口3的用户信息的个数为2,因此,对接口3按照用户信息的顺序进行两次调用,分别获得接口3对bj的返回值f1,接口3对25的返回值f2;然后对接口4按照用户信息的顺序进行两次调用,分别获得接口4对23的返回值f3。

其中,返回值f1中,带有关于用户信息bj的第二标识;返回值f2中,带有关于用户信息25的第二标识;返回值f3中,带有关于用户信息23的第二标识。其中,本实施例中,第二标识可以添加在协议层中,格式关键字,后接续接口调用请求源所带的请求链接,如url1、url2等。用以保证合并结果返回给路由器后,在路由器中会根据请求链接独立存在,从而保证来自客户端的接口调用请求能够根据对应链接立即得到返回值。

在本实施例中,应用服务模块所获得的返回值可以采用分开的方式返回,当然,也可以将第一合并请求的所有返回值,打包为一个,或者打包为多个的方式返回。

在本实施例中,在所述返回值返回至路由器后。关于路由器将如何进行后续步骤,具体可以参看其他实施例,在此不再赘述。

本实施例的有益效果在于,通过应用服务模块接收到所述第一合并请求时,解析所述第一合并请求的请求头信息,获得每一接口名称和相关联的所有用户信息;然后,根据接口名称以及相关联的用户信息,对对应接口进行对应的调用;最后,在每次调用接口所获的返回值中添加对应用户信息的第二标识。实现了服务器打包接收带用户信息的多个接口调用请求,再通过对一个接口进行用户名的顺序调取,从而达到高效调取接口获得返回值的效果。并且通过在返回值中添加第二标识,从而能够使得返回值到达路由后,能够准确返回至各自的请求源。

实施例四

图5是本发明接口合并方法第四实施例的流程图。基于第三实施例。所述接口合并方法包括:

步骤s301,与第三实施例中的步骤s201相同,具体请参看第三实施例,在此不再赘述;

步骤s302,与第三实施例中的步骤s202相同,具体请参看第三实施例,在此不再赘述;

步骤s303,与第三实施例中的步骤s203相同,具体请参看第三实施例,在此不再赘述;

步骤s304,服务器的分析服务模块获得接口调用请求和对应接口返回的返回值,并且分析所获返回值是否与所述接口调用请求中的用户信息相关;

步骤s305,在确定返回值与接口调用请求中用户信息相关时,记录所述接口为相关接口,否则记录为通用接口。

步骤s306,将记录结果反馈至客户端。

在本实施例中,客户端在启动和运行的过程中,会产生大量的接口调用请求。其中,包括带用户信息的接口调用请求和不带用户信息的接口调用请求。例如:接口调用请求包括接口1、接口2、接口3、接口3和接口4。其中接口1、接口3和接口4都带有用户信息;而接口2不带有用户信息。

路由器通过查找客户端的添加至接口调用请求中协议层的标识字符,达到区分接口调用请求类型的效果。然后路由器将相关接口进行合并为第一合并请求后,再发送至应用服务模块。应用服务模块解析该第一合并请求后,调用对应的接口,并且返回所有返回值。最后通过路由器将返回值返回至客户端。

具体的,在客户端进行用户登录之后,大部分的接口调用请求都将带上用户信息。因此,客户端在分类时,将会把大量的接口调用请求上添加第一标识。但是,在接口返回值中,有些接口在对应不同的用户信息时,其返回值并没有区别。因此,这些接口与用户信息不相关,应当分类为通用接口,而不应该分类至相关接口。

具体的,本实施例中,在将接口的返回值返回至请求源之后,通过分析服务模块获得接口调用请求和对应接口返回的返回值,并且分析所获返回值是否与所述接口调用请求中的用户信息相关;然后,在确定返回值与接口调用请求中用户信息相关时,记录所述接口为相关接口,否则记录为通用接口。最后,将记录结果反馈至客户端。

例如,当出现10个接口调用请求的第一标识如下:

tag_应用a_接口3_用户名01;

tag_应用a_接口3_用户名02;

tag_应用a_接口3_用户名03;

tag_应用a_接口3_用户名04;

tag_应用a_接口3_用户名05;

tag_应用a_接口3_用户名06;

tag_应用a_接口3_用户名07;

tag_应用a_接口3_用户名08;

tag_应用a_接口3_用户名09;

tag_应用a_接口3_用户名10。

但是,在分析接口3在对应上述接口调用请求的返回值时,发现所有的返回值都是web1。则此时,分析服务模块将判定接口3为通用接口。然后,分析服务模块将接口3的记录结果返回值客户端。从此,客户端在调用接口3时,将接口3定义为通用接口,而不会为其添加第一标识。从而路由器,将会将关于接口3的接口调用请求合并至通用接口调用中,以进行一次调用,反馈至全部请求源。

本实施例的有益效果在于,通过分析服务模块获得接口调用请求和对应接口返回的返回值,并且分析所获返回值是否与所述接口调用请求中的用户信息相关;然后,在确定返回值与接口调用请求中用户信息相关时,记录所述接口为相关接口,否则记录为通用接口;最后,将记录结果反馈至客户端。从而实现对接口的管控,实现客户端在用户登录之后,还能够准确区分接口的类型,达到提高服务器的并发量的效果,从而为用户带来更快更流畅的应用体验。

进一步的,所述步骤s309,将记录结果反馈至客户端包括:

在返回至客户端的接口调用请求的返回值中,添加标识所调用接口类型的第三标识。

其中,第三标识也可以标记在协议层,通过特定的第三标识来进行区别。例如,标记为tag_off_接口名x。

本实施例,通过在返回至客户端的接口调用请求的返回值中,添加标识所调用接口类型的第三标识。则能够实现快速反馈接口的信息至客户端的效果。使得客户端能够在获得返回值的同时,对接口的类型进行变更。

实施例五

图6是本发明接口合并方法第五实施例的流程图。本实施例的接口合并方法应用于客户端。

所述接口合并方法包括:

步骤s401,客户端在发起接口调用请求时,判断所调用接口是否为相关接口;

步骤s402,在所调用的接口为相关接口时,在所述接口调用请求中添加与用户信息相关的第一标识。

在本实施例中,首先,客户端在发起接口调用请求时,判断所调用接口是否为相关接口。具体的,客户端在启动和运行的过程中,会产生大量的接口调用请求。其中,包括带用户信息的接口调用请求和不带用户信息的接口调用请求。例如:接口调用请求包括接口1、接口2、接口3、接口3和接口4。其中接口1、接口3和接口4都带有用户信息;而接口2不带有用户信息。客户端可以根据自身在生成接口调用请求时,判断当前是为用户登录状态,或者在保存在客户端本地的关于应用的接口关系表中,从而确认该接口为相关接口。

本实施例中,在判断所调用接口是否为相关接口之后,判定所调用的接口为相关接口时,然后在所述接口调用请求中添加与用户信息相关的第一标识,即将上述的标识字符设置为第一标识。其中,通过设置于用户信息相关的第一标识,则能够使得路由器在接到该接口调用请求信息时,直接从接口调用请求中获取到该接口调用请求的类型,达到高效分类的效果。

此时,如何定义接口调用请求中标签格式,用以高效的区分该接口调用请求是否为相关接口,就至关重要。本实施例中,该标签称为第一标识。第一标识的格式定义如下:首先,通过设置一个关键词来标识该标签的起始,然后在关键词之后接续应用名称、接口名称以及用户名称等信息,然后通过分隔符号来分隔具体的应用名称、接口名称以及用户名称等信息。

进一步的,本实施例中,所述第一标识位于协议层中,为包括应用名称、用户名和接口名的协议字标识。例如,本实施例中,关键词为tag,整个标签为tag_应用x_接口x_用户名x。该第一标识添加在接口调用请求的协议层。从而能够达到不影响接口调用请求的实质内容,还可以起到快速识别的效果。

在本实施例中,在所述接口调用请求中添加与用户信息相关的第一标识之后,路由器将接收到该接口调用请求。关于路由器将如何进行后续步骤,具体可以参看上述实施例,在此不再赘述。

本实施例的有益效果在于,首先,通过客户端在发起接口调用请求时,判断所调用接口是否为相关接口;然后,在所调用的接口为相关接口时,在所述接口调用请求中添加与用户信息相关的第一标识。实现了能够使得客户端发起接口调用请求时,就已经区分了该接口调用请求的类型,并且以规定的标识字符格式写入接口调用请求的协议层中。从而路由器通过查找每一接口调用请求的内容;然后在查找到与用户相关的第一标识时,确定所述接口调用请求为相关接口。从而仅需要路由器识别接口调用请求标识本身,即可完成对接口调用请求的识别。而不需要在额外保存一个负载的接口关系对照表,从而再通过额外的对比对照表的流程,才能确定当前接口调用请求是否为相关请求。因此,本实施例具有路由器能够高效对接口调用请求进行分类的效果。

实施例六

图7为本发明接口合并系统一实施例的构架示意图。基于上述实施例,所述接口合并系统,包括:客户端、路由器和服务器;

所述客户端、路由器和服务器上各自设置有存储器、处理器及存储在所述存储器上并可在所述处理器上运行的接口合并程序;

请参看图7,所述接口合并程序被所述处理器执行时实现:

客户端在发起接口调用请求时,判断所调用接口是否为相关接口;在所调用的接口为相关接口时,在所述接口调用请求中添加与用户信息相关的第一标识;

路由器接收多个接口调用请求;确定每一所述接口调用请求所对应的接口是否为与用户信息相关的相关接口;将属于相关接口的所述接口调用请求进行合并请求操作,获得第一合并请求;接收根据所述第一合并请求所返回的返回值,并且分别返回至对应的接口调用请求源;

服务器的应用服务模块接收到来自路由器的第一合并请求时,解析所述第一合并请求的请求头信息,获得每一接口名称和相关联的所有用户信息;根据接口名称以及相关联的用户信息,对对应接口进行对应的调用;在每次调用接口所获的返回值中添加对应用户信息的第二标识;

服务器的分析服务模块获得接口调用请求和对应接口返回的返回值,并且分析所获返回值是否与所述接口调用请求中的用户信息相关;在确定返回值与接口调用请求中用户信息相关时,记录所述接口为相关接口,否则记录为通用接口;将记录结果反馈至客户端。

在本实施例中,首先,路由器接收多个接口调用请求。具体的,路由器在同一时间段内,会接收到关于访问同一应用服务模块上接口的大量接口调用请求。其中,很可能大量的接口调用请求中,包括带用户信息的接口调用请求和不带用户信息的接口调用请求。例如:接口调用请求包括接口1、接口2、接口3、接口3和接口4。其中接口1、接口3和接口4都带有用户信息;而接口2不带有用户信息。

进一步的,在本实施例中,路由器在接收到多个接口调用请求时,需要对每一接口调用请求进行区分,确定每一所述接口调用请求所对应的接口是否为与用户信息相关的相关接口。具体的,可以通过预先在接口调用请求中内置标识字符。例如在接口调用请求的内容中,增加一条信息,在协议层增加一条信息,该信息中描述了接口的类型,从而起到传递接口类型的作用。然后通过路由器来读取这些内置的标识字符,达到区分接口调用请求的效果。当然,还可以预先在路由器中设置接口关系对照表,然后在获得接口调用请求时,通过查表的方式区分接口调用请求的类型。

在本实施例中,确定每一所述接口调用请求所对应的接口是否为与用户信息相关的相关接口之后,将属于相关接口的所述接口调用请求进行合并请求操作,获得第一合并请求。具体的,接口调用请求中很可能包括对多个相关接口的调用,以及对多个通用接口的调用。关于通用接口的调用,可以一次调用,然后将接口的返回值返回到所有的请求源。但是,针对相关接口的调用,由于接口会对应不同的用户而反馈不同的返回值,因此对于相关接口只能分开调用。本实施例采用第一合并请求的来传输多个接口调用请求,因此,可以通过一次请求传递,代替现有的多次请求传递,从而提高相关请求的传递效率,以及应用服务模块的响应效率。

此时,如何定义第一合并请求的格式,用以高效的传递该第一合并请求的内容,就至关重要。进一步的,本实施例中,所述第一合并请求包括请求头信息,所述请求头信息中包括接口名称和关联保存的用户信息;其中,每一接口名称与请求调用该接口的所有用户信息关联保存。例如,请参看图2,多个接口调用请求所包括的多个第一标识包括:

tag_应用a_接口3_用户名bj;

tag_应用a_接口3_用户25;和

tag_应用a_接口4_用户名23。

相应的第一合并请求的请求头信息为:

{接口名称:接口3,用户信息:{bj,25};接口名称:接口4,用户信息:{23}}。

应用服务模块收到带用户信息的第一合并请求后,对请求头进行解析,然后根据用户信息的个数,对对应的接口进行对应次数的调用。例如上述例子中,解析得到接口3有两个用户信息,则对接口3进行用户名bj的调用与用户名25的调用。

在本实施例中,获得第一合并请求之后,则将第一合并请求发送至应用服务模块,并且接收根据所述第一合并请求所返回的返回值。返回值可以采用分开的方式返回,当然,也可以将第一合并请求的所有返回值,打包为一个,或者打包为多个的方式返回。为了保证合并结果返回给路由器后,在路由器中会根据请求链接独立存在,从而保证来自客户端的接口调用请求能够根据对应链接立即得到返回值。每一返回值中都带有需要返回的目标信息,例如接口调用请求源所带的请求链接,如url1、url2等。

本实施例的有益效果在于,通过路由器接收多个接口调用请求;确定每一所述接口调用请求所对应的接口是否为与用户信息相关的相关接口;将属于相关接口的所述接口调用请求进行合并请求操作,获得第一合并请求;接收根据所述第一合并请求所返回的返回值,并且分别返回至对应的接口调用请求。实现了一种高效的接口合并方案,增强了携带用户信息的接口调用请求的传递效率和响应效率,使得在处理同一时间大量的接口调用请求时,能够大幅提高携带用户信息的接口调用请求整体响应速度。

进一步的,在本实施例中,首先路由器查找每一接口调用请求的内容;然后在查找到与用户相关的第一标识时,确定所述接口调用请求为相关接口。

具体的,在本实施例中,查找每一接口调用请求的内容。如上例所述,具体的,路由器在同一时间段内,会接收到关于访问同一应用服务模块上接口的大量接口调用请求。其中,很可能大量的接口调用请求中,包括带用户信息的接口调用请求和不带用户信息的接口调用请求。例如:接口调用请求包括接口1、接口2、接口3、接口3和接口4。其中接口1、接口3和接口4都带有用户信息;而接口2不带有用户信息。

进一步的,在本实施例中,路由器在接收到多个接口调用请求时,需要对每一接口调用请求进行区分,确定每一所述接口调用请求所对应的接口是否为与用户信息相关的相关接口。本实施例中,通过预先在接口调用请求中内置标识字符,然后通过路由器来读取这些内置的标识字符,达到区分接口调用请求的效果。

在本实施例中,首先,客户端在发起接口调用请求时,判断所调用接口是否为相关接口。具体的,客户端在启动和运行的过程中,会产生大量的接口调用请求。其中,包括带用户信息的接口调用请求和不带用户信息的接口调用请求。例如:接口调用请求包括接口1、接口2、接口3、接口3和接口4。其中接口1、接口3和接口4都带有用户信息;而接口2不带有用户信息。客户端可以根据自身在生成接口调用请求时,判断当前是为用户登录状态,或者在保存在客户端本地的关于应用的接口关系表中,从而确认该接口为相关接口。

本实施例中,在判断所调用接口是否为相关接口之后,判定所调用的接口为相关接口时,然后在所述接口调用请求中添加与用户信息相关的第一标识,即将上述的标识字符设置为第一标识。其中,通过设置于用户信息相关的第一标识,则能够使得路由器在接到该接口调用请求信息时,直接从接口调用请求中获取到该接口调用请求的类型,达到高效分类的效果。

此时,如何定义接口调用请求中标签格式,用以高效的区分该接口调用请求是否为相关接口,就至关重要。本实施例中,该标签称为第一标识。第一标识的格式定义如下:首先,通过设置一个关键词来标识该标签的起始,然后在关键词之后接续应用名称、接口名称以及用户名称等信息,然后通过分隔符号来分隔具体的应用名称、接口名称以及用户名称等信息。

进一步的,本实施例中,所述第一标识位于协议层中,为包括应用名称、用户名和接口名的协议字标识。例如,本实施例中,关键词为tag,整个标签为tag_应用x_接口x_用户名x。该第一标识添加在接口调用请求的协议层。从而能够达到不影响接口调用请求的实质内容,还可以起到快速识别的效果。

具体的,本实施例中,在将接口的返回值返回至请求源之后,通过分析服务模块获得接口调用请求和对应接口返回的返回值,并且分析所获返回值是否与所述接口调用请求中的用户信息相关;然后,在确定返回值与接口调用请求中用户信息相关时,记录所述接口为相关接口,否则记录为通用接口。最后,将记录结果反馈至客户端。

例如,当出现10个接口调用请求的第一标识如下:

tag_应用a_接口3_用户名01;

tag_应用a_接口3_用户名02;

tag_应用a_接口3_用户名03;

tag_应用a_接口3_用户名04;

tag_应用a_接口3_用户名05;

tag_应用a_接口3_用户名06;

tag_应用a_接口3_用户名07;

tag_应用a_接口3_用户名08;

tag_应用a_接口3_用户名09;

tag_应用a_接口3_用户名10。

但是,在分析接口3在对应上述接口调用请求的返回值时,发现所有的返回值都是web1。则此时,分析服务模块将判定接口3为通用接口。然后,分析服务模块将接口3的记录结果返回值客户端。从此,客户端在调用接口3时,将接口3定义为通用接口,而不会为其添加第一标识。从而路由器,将会将关于接口3的接口调用请求合并至通用接口调用中,以进行一次调用,反馈至全部请求源。

进一步的,所述将记录结果反馈至客户端包括:

在返回至客户端的接口调用请求的返回值中,添加标识所调用接口类型的第三标识。

其中,第三标识也可以标记在协议层,通过特定的第三标识来进行区别。例如,标记为tag_off_接口名x。

本实施例中,首先,应用服务模块接收到所述第一合并请求时,解析所述第一合并请求的请求头信息,获得每一接口名称和相关联的所有用户信息;然后,根据接口名称以及相关联的用户信息,对对应接口进行对应的调用;最后,在每次调用接口所获的返回值中添加对应用户信息的第二标识。

例如,请参看图2,多个接口调用请求所包括的多个第一标识包括:

tag_应用a_接口3_用户名bj;

tag_应用a_接口3_用户25;和

tag_应用a_接口4_用户名23。

相应的第一合并请求的请求头信息为:

{接口名称:接口3,用户信息:{bj,25};接口名称:接口4,用户信息:{23}}。

应用服务模块收到带用户信息的第一合并请求后,对请求头进行解析。此时获得接口包括接口3和接口4,其中,接口3相关联的用户信息为bj,25;接口4相关联的用户信息为23。然后,接口3的用户信息的个数为2,因此,对接口3按照用户信息的顺序进行两次调用,分别获得接口3对bj的返回值f1,接口3对25的返回值f2;然后对接口4按照用户信息的顺序进行两次调用,分别获得接口4对23的返回值f3。

其中,返回值f1中,带有关于用户信息bj的第二标识;返回值f2中,带有关于用户信息25的第二标识;返回值f3中,带有关于用户信息23的第二标识。其中,本实施例中,第二标识可以添加在协议层中,格式关键字,后接续接口调用请求源所带的请求链接,如url1、url2等。用以保证合并结果返回给路由器后,在路由器中会根据请求链接独立存在,从而保证来自客户端的接口调用请求能够根据对应链接立即得到返回值。

在本实施例中,应用服务模块所获得的返回值可以采用分开的方式返回,当然,也可以将第一合并请求的所有返回值,打包为一个,或者打包为多个的方式返回。

本实施例的有益效果在于,通过路由器接收多个接口调用请求;确定每一所述接口调用请求所对应的接口是否为与用户信息相关的相关接口;将属于相关接口的所述接口调用请求进行合并请求操作,获得第一合并请求;接收根据所述第一合并请求所返回的返回值,并且分别返回至对应的接口调用请求。实现了一种高效的接口合并方案,增强了携带用户信息的接口调用请求的传递效率和响应效率,使得在处理同一时间大量的接口调用请求时,能够大幅提高携带用户信息的接口调用请求整体响应速度。

实施例七

基于上述实施例,本发明还提出了一种计算机可读存储介质,所述计算机可读存储介质上存储有接口合并程序,所述接口合并程序被处理器执行时实现如上述的接口合并程序的步骤。

实施本发明的接口合并方法、系统及计算机可读存储介质,通过路由器接收多个接口调用请求;确定每一所述接口调用请求所对应的接口是否为与用户信息相关的相关接口;将属于相关接口的所述接口调用请求进行合并请求操作,获得第一合并请求;接收根据所述第一合并请求所返回的返回值,并且分别返回至对应的接口调用请求。实现了一种高效的接口合并方案,增强了携带用户信息的接口调用请求的传递效率和响应效率,使得在处理同一时间大量的接口调用请求时,能够大幅提高携带用户信息的接口调用请求整体响应速度。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1