FE-Interview
FE-Interview copied to clipboard
我也来出题
欢迎大家一起来贡献题目,一起来分析解答,共同成长 面试中遇到,工作中遇到的,都可以在这里和大家一起分享
分享我在工作中遇到的一道题,首先我请求了一个a接口,返回结果作为下一个接口b的参数,b接口收到参数后发起请求,但是不回马上返回结果,需要定时查询,直到查询返回结果为止,如果使用定时器如何让两个请求同步执行,出现定时器执行越来越快的问题,如何解决?
分享我在工作中遇到的一道题,首先我请求了一个a接口,返回结果作为下一个接口b的参数,b接口收到参数后发起请求,但是不回马上返回结果,需要定时查询,直到查询返回结果为止,如果使用定时器如何让两个请求同步执行,出现定时器执行越来越快的问题,如何解决?
如果b接口的参数依赖于a接口的返回,在不改变后端接口逻辑的情况下,不存在能请求同步的情况。而b接口不马上返回结果,可前端轮询或者后端推送的方式,这个看具体项目实践而定。如果非要ab接口请求同步,则需要修改接口逻辑,如将b接口拆成c、d接口,c接口传递的是与a接口返回结果无关的参数,然后后端基于这些参数先进行一部分工作,等到a接口返回再发送d接口,然后再补充相关参数。另外,如果需要a接口的返回作为参数,那么b接口能否修改,因为后端自己调用会更快,哪怕不同组件模块之间,内网调用也快于外网调用
@magicyangmei const res = await a await b(res) 这样不行吗?
前端面试库可以搜索 前端MST宝库 就有了