当前位置:   article > 正文

微信小程序中函数1s内调用次数超限制的解决_qqmapsdk.calculatedistance 调用次数上限是多少

qqmapsdk.calculatedistance 调用次数上限是多少

问题场景

一个数据库中共157条数据,每个数据需要调用一个API函数。将这个处理逻辑中写在一个for循环里,此时console报错提示超过每秒最多5个的限制。(好嘛,我&?》“:%&#¥@)

尝试过的方案

1.用队列缓冲,网上应该很多,但是没成功
2. 这篇看起来很强的样子但是没看懂:js限制promise并发

实际解决

一秒最多5个请求,一个请求就是200ms,那么设置每隔一段时间执行一次就可以了。

设置的Interval为210ms时获取全部数据约需要3min,设置为0.0001-1时约需1min30s;

不是很能理解,为啥0.0001-1的时间差不多。。。。。

that.data.inter = setInterval(
        function(){
        //设置读取的信息条数,到限制后就结束循环任务
          if(index == all.length - 2){
            clearInterval(that.data.inter)
          }
          console.log("=====",index)
          //每执行一次下标+1
          index = index + 1
          qqmapsdk.geocoder({
            //获取表单传入地址
            address: all[index].adderess, //地址参数,例:固定地址,address: '北京市海淀区彩和坊路海淀西大街74号'
            success: function (decodedData) { //成功后的回调
              console.log(decodedData);
              var res = decodedData.result;
              var latitude = res.location.lat;
              var longitude = res.location.lng;
              var tmpData = {
                id: all[index].riskLevel,
                latitude: latitude,
                longitude: longitude,
                iconPath: "../../static/light.png", //换图标
                width: 100, //改大小
                height: 100
              }
             markers.push(tmpData)
            },
            fail: function (error) {
              console.error(error);
            },
            complete: function (res) {
              console.log(res);
            }
          })
        },0.0001
      )
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小惠珠哦/article/detail/891185
推荐阅读
相关标签
  

闽ICP备14008679号