今天看啥  ›  专栏  ›  前端Q

面试官:来, 实现一个基于promise的请求重试吧

前端Q  · 公众号  ·  · 2024-08-26 09:15
    

文章预览

点击上方  前端Q ,关注公众号 回复 加群 ,加入前端Q技术交流群 背景 实现一个函数 实现一个重试功能,当异步任务失败时,等待N秒后会自动重试直到成功或达到最大重试次数。 const  query =  ()  =>  {      return  fetch(          'https://api.juejin.cn/user_api/v1/user/dynamic?user_id=3649990025815853 =0 =2608 =7387740407814587904 =0' ,     ); }; 代码实现 /**  *  *  @param  task  返回一个promise的异步任务  *  @param  count 需要重试的次数  *  @param  time  每次重试间隔多久  *  @returns  返回一个新promise  */ const  retry =  ( task, count =  5 , time =  3  *  1000 ) =>  {      return   new   Promise ( ( _res, _rej ) =>  {          let  doneCount =  0 ;          const  run =  ()  =>  {             task()                 .then( data  =>  {                      ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览