需求背景
有一个数据统计页面,含有7个指标,这7个指标分别来自不同的3个接口,现在我们想要合并其中2个,之前的3个接口的调用采用的是promise.all
,但是promise.all
数组中某一个请求失败,都会导致无法返回正确数据,导致7个指标都为默认值--
目标
1、合并3个变成2个接口
2、采用promise.allSettled
解决某个接口失败,导致数据完全不返回问题
3、采用chrome
浏览器的开发者工具Network
,找到需要测试的接口右键出现的菜单中点击Block request URL
对接口禁用,模拟接口请求失败,验证promise.allSettled
的有效性
结论
1、开发者工具中的Block request URL
可以方便的进行模拟接口失败情景
2、promise.allSettled
确实可以做到避免某个接口失败,导致数据全部无法返回的问题