sunshine
管理员
管理员
  • 最后登录2023-10-30
  • 发帖数170
  • 社区居民
阅读:13809回复:0

[微信小程序]wx.request 多次请求时,提示:ERROR, API rate limit exceeded. 状态码为429

楼主#
更多 发布于:2017-12-29 09:51

小程序的开发中,使用了第三方的数据接口. 遇到了如下问题:

   在onload的方法中,用了两次wx.request方法,去请求第三数据,结果就报错了。但是如果只写一个wx.request这两个接口,都可以正确返回数据。这难道是微信不可以使用两次wx.request方法?? 想想应该不可能,看了一下报错信息,



   提示:
         ERROR, API rate limit exceeded
        其中,包含了一个状态码: 429

百度了一下:HTTP的状态码

429 Too Many Requests (太多请求)
当你需要限制客户端请求某个服务数量时,该状态码就很有用,也就是请求速度限制。
看了429的解释,在看看错误提示. 原来是第三方接口的限制。接口对于客户端的请求数进行了限制。


   那如何解决了呢?

    在第一个请求方法,成功的回调函数中,在去发起第二个请求。结果测试后,还是不行,因为第一个请求的回调函数执行,说明第一个请求还没有结束,还和第三方有交互,在进行第二次请求就会报错。

   最后,想到了一个解决办法。使用setTimeout 去调用第二次请求方法。问题得到解决.(目前,只用这样的方法来解决了,欢迎探讨,是否还有其它的解决方法)


      如下图:

    

图片:request.png



参考 :
      https://www.cnblogs.com/shanyou/archive/2012/05/06/2486134.html         https://stackoverflow.com/questions/24854293/tumblr-api-v2-error-code-429-rate-limit-exceeded-you-are-being-rate-limited
游客


返回顶部

公众号

公众号