本申请涉及计算机,尤其涉及一种聚合接口数据获取方法、装置、存储介质及计算机设备。
背景技术:
1、随着互联网在多终端、多平台、多业务形态等各方面的发展,前后端的数据交互日益复杂,用户的体验要求也越来越高,微服务架构流行之后,后端需要提供的服务越来越多、也越来越细,如商品、资讯、文章、评论、视频、用户信息等都属于不同且独立的微服务,前端加载页面时需要通过第三方子接口从多个后端微服务中获取数据。
2、互联网平台中,后端微服务的功能较为稳定,前端则会随着社会热点频繁改版,因此每次向后端请求数据时,需要串行去调用多个第三方子接口的数据进行重新编码得到前端所需的页面数据,这样不仅接口调用耗时长,而且前端页面串行访问多个第三方子接口,若其中一个后端微服务出现异常或者宕机,会导致前端整个页面报错,进而影响前端用户体验。
技术实现思路
1、本申请的目的旨在至少能解决上述的技术缺陷之一,特别是现有技术中聚合接口调用数据时其中一个后端微服务出现异常或者宕机会导致前端整个页面报错,进而影响前端用户体验的技术缺陷。
2、本申请提供了一种聚合接口数据获取方法,所述方法包括:
3、接收前端发起的页面数据请求,所述页面数据请求包括待请求的页面数据对应的多个第三方子接口,每一个第三方子接口设置有对应的后端微服务;
4、通过各个第三方子接口并行调用对应的后端微服务,并获取每一个后端微服务返回的子接口数据;
5、提取各个子接口数据中的有效字段,并将提取到的有效字段进行聚合后形成页面数据返回至所述前端。
6、可选地,所述通过各个第三方子接口并行调用对应的后端微服务,并获取每一个后端微服务返回的子接口数据,包括:
7、针对每一个第三方子接口,向该第三方子接口发起数据获取请求,并判断该第三方子接口是否在预设时间内响应所述数据获取请求;
8、若是,则通过该第三方子接口调用对应的后端微服务的子接口数据,并将所述子接口数据更新到该第三方子接口对应的子接口备份缓存;
9、若否,则确定该第三方子接口对应的子接口备份缓存,并从所述子接口备份缓存中获取子接口数据。
10、可选地,所述提取各个子接口数据中的有效字段,并将提取到的有效字段进行聚合后形成页面数据返回至所述前端,包括:
11、依据所述前端请求的页面数据,确定所述页面数据包含的多个数据模块;
12、对每一个数据模块进行解析,确定每一个数据模块对应的子接口数据以及在所述子接口数据中对应的有效字段位置;
13、基于每一个子接口数据中对应的有效字段位置,对每一个子接口数据进行裁剪,得到每一个数据模块对应的有效字段;
14、依据所述页面数据的逻辑结构,对每一个数据模块对应的有效字段进行聚合,形成页面数据并返回至所述前端。
15、可选地,所述方法还包括:
16、当本地缓存存在与所述页面数据请求对应的页面数据时,确定所述页面数据的缓存时长,并判断所述缓存时长是否超过预设缓存时效期;
17、若否,则直接将所述本地缓存对应的页面数据返回至所述前端;
18、若是,则返回至所述通过各个第三方子接口并行调用对应的后端微服务的步骤。
19、可选地,所述方法还包括:
20、若所述页面数据的缓存时长超过预设缓存时效期,且在通过第三方子接口调用数据获取页面数据过程中出现异常,则直接将所述本地缓存对应的页面数据返回至所述前端。
21、可选地,所述方法还包括:
22、若所述本地缓存中存在页面数据的缓存时长超过预设删除时长,则将该页面数据从所述本地缓存中清除。
23、可选地,所述方法还包括:
24、将从各个子接口数据提取到的有效字段进行聚合后形成的页面数据缓存至本地缓存。
25、本申请还提供了一种聚合接口数据获取装置,包括:
26、请求接收模块,用于接收前端发起的页面数据请求,所述页面数据请求包括待请求的页面数据对应的多个第三方子接口,每一个第三方子接口设置有对应的后端微服务;
27、接口调用模块,用于通过各个第三方子接口并行调用对应的后端微服务,并获取每一个后端微服务返回的子接口数据;
28、数据聚合模块,用于提取各个子接口数据中的有效字段,并将提取到的有效字段进行聚合后形成页面数据返回至所述前端。
29、本申请还提供了一种存储介质,所述存储介质中存储有计算机可读指令,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如上述实施例中任一项所述聚合接口数据获取方法的步骤。
30、本申请还提供了一种计算机设备,包括:一个或多个处理器,以及存储器;
31、所述存储器中存储有计算机可读指令,所述计算机可读指令被所述一个或多个处理器执行时,执行如上述实施例中任一项所述聚合接口数据获取方法的步骤。
32、从以上技术方案可以看出,本申请实施例具有以下优点:
33、本申请提供的聚合接口数据获取方法、装置、存储介质及计算机设备,当接收到前端发起的页面数据请求时,该页面数据请求包括待请求的页面数据对应的多个第三方子接口,每一第三方子接口设置有对应的后端微服务,第三方子接口可用于对后端微服务中的子接口数据进行调用,以便聚合得到前端请求的页面数据,接着可以利用各个第三方子接口并行调用对应的后端微服务,获取每一后端微服务返回的子接口数据,并从各个第三方子接口中提取出有效字段,从而减少调用接口数据的时间,在提取出各个第三方子接口的有效字段后,可以通过逻辑处理对各段有效字段进行聚合,从而得到前端请求的页面数据,并将该页面数据返回至前端。本申请通过各个第三方子接口并行调用后端微服务的子接口数据,并对子接口数据进行有效字段提取后聚合的方式,避免其中一个后端微服务出现异常或宕机而导致整个前端页面报错,体现聚合接口高性能高可用的特性,进而提高后端的服务稳定性以及前端用户体验。
1.一种聚合接口数据获取方法,其特征在于,所述方法包括:
2.根据权利要求1所述的聚合接口数据获取方法,其特征在于,所述通过各个第三方子接口并行调用对应的后端微服务,并获取每一个后端微服务返回的子接口数据,包括:
3.根据权利要求1所述的聚合接口数据获取方法,其特征在于,所述提取各个子接口数据中的有效字段,并将提取到的有效字段进行聚合后形成页面数据返回至所述前端,包括:
4.根据权利要求1所述的聚合接口数据获取方法,其特征在于,所述方法还包括:
5.根据权利要求4所述的聚合接口数据获取方法,其特征在于,所述方法还包括:
6.根据权利要求4所述的聚合接口数据获取方法,其特征在于,所述方法还包括:
7.根据权利要求1所述的聚合接口数据获取方法,其特征在于,所述方法还包括:
8.一种聚合接口数据获取装置,其特征在于,包括:
9.一种存储介质,其特征在于:所述存储介质中存储有计算机可读指令,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如权利要求1至7中任一项所述聚合接口数据获取方法的步骤。
10.一种计算机设备,其特征在于,包括:一个或多个处理器,以及存储器;