ajax递归发送请求

简介

大家都知道浏览器在处理http网络请求的时候,不同的浏览器会有不一样的并发限制,下表是一些主流浏览器对 HTTP 1.1 和 HTTP 1.0 的最大并发连接数目:

Browser HTTP/1.1 HTTP/1.0
IE 10,11 6 6
firfox 6 6
Safari 4 4
Chrome 4+ 6 6

问题

  • 当并发超过时浏览器无法按时获取
  • 当并发时,资源无法按规定顺序获取(如图片显示的先后顺序)

解决

  • 我们这个时候可以利用js的递归去发送http请求:
function recursion( index,array ) {
    if ( index < array.length ) {
   // 发送请求
   fetch(url,data).then( res =>{ retrun json }).then( json => { 
     console.log( json );
     recursion( index+1 ,array )
  }).catch(json=>{
       console.log( json )
    })
 };
 // 调用函数
 recursion( 0,array );
posted @ 2020-07-14 15:04  大耳朵小虎  阅读(611)  评论(0编辑  收藏  举报