当使用诸如、Twitter、或Vimeo之类的服务时,它们对发生在API上的每个请求都使用API速率限制,它们将返回(在响应的标题中),如下所示:
X-比率限制-限制X-比率限制-剩余X-比率限制-重置
例如,在我的应用程序中,我将使用Vimeo 来处理很多事情。像这样:
对于每个对X-RateLimit-Remaining Vimeo的请求,我必须检查值是>0到、继续还是返回错误(如果超过了速率限制)。( Vimeo API利率限制 )。
是否有处理外部API利率限制的良好做法?
存储这些值的最佳位置是什么,以便我可以在需要时检索它们?
备注:Vimeo不只是在达到利率限制时返回错误,它将禁止我的应用程序当我超过这个限制时,正如文档所说的。所以我得把它们放在哪里。( #Vimeo API利率限制 )。
发布于 2018-12-12 12:18:03
您应该在本地缓存值,这取决于缓存驱动程序,它可以是redis、memcached等.
在这里阅读更多信息:https://laravel.com/docs/5.7/cache
我建议您创建一个类来管理缓存的值,并在需要时从API中更新/创建它们。这个类可能是类的依赖项,它实际上包含调用外部API的逻辑。
https://stackoverflow.com/questions/53738922
复制相似问题