如何处理一次先后执行多个不同异步接口请求,同步调用结果?

有这样的场景

                应用首页有多个独立的功能模块,   而服务端针对这些模块提供的接口都是独立的,当页面加载的时候,会执行多个不同模块接口的调用请求。 

问题

                由于都是异步的请求调用,这些接口请求得到数据响应的先后顺序并不确定。那么当我们想在在页面加载的时候显示"加载中"进度条提示, 全部接口请求完毕后隐藏,该如何处理?

如何处理: 

                1    定义一个全局变量 用来计数。

                2   在各个接口 开始请求的时候(未执行到结果回调),++计数器 (有多少接口 计数器 就是多少值)。

                3   在各个接口 拿到返回结果里面,--计数器  ,同时判定 计数器的数量 是否已是0 (表示全部已经请求回来了)。

                4   根据计数器的是否为0 ,来判断隐藏 "加载中"进度条。

            

ps: 同理场景,当切换条件,某些接口并未获取到数据返回时(或者空白结果),要求再次显示空白视觉效果。

     需要累记请求失败的数量,判断是否显示。

原文地址:https://www.cnblogs.com/softwarelanguagebs/p/9566562.html