我正在尝试从我们的帐户中获取报告统计信息。我需要进行异步调用,否则我会收到数据过旧的错误消息。
当我创建多个请求时,我会收到错误消息:“来自此广告帐户的调用过多。稍等一下,然后重试。”
由于异步报告的工作方式,我在短时间内只发出了大约 30 个请求。有没有更好的方法来获取报告数据?如果没有,是否有办法查看文档中提到的请求分数?
另一个问题是,当您的应用处于开发访问权限时,请求量是否有差异?
提前致谢, 乔里克
最佳答案
第一点,根据access level docs here对处于开发阶段的应用程序有严格的速率限制。
其次,要获取报告,有多个端点,例如广告帐户明智报告、事件明智报告、广告明智报告,here is a link to the docs for Insights API 可用的参数是:
- act_AD_ACCOUNT_ID/见解
- CAMPAIGN_ID/见解
- ADSET_ID/见解
- AD_ID/见解
最后,关于营销 api 中的速率限制。它是作为一种滑动窗口方法完成的,这意味着没有实际跟踪每天的请求数量之类的,只是不允许在短时间内发出大量请求。
您可以做两件事, 首先查看 api 的响应,如果响应是 ratelimit 错误,则停止请求。 二、使用批量请求
这是有关限制的故障排除指南的要点 疑难解答
超时
导致此端点失败的最常见问题是请求过多和超时:
在/GET 或同步请求上,您可能会遇到内存不足或超时错误。 在/POST 或异步请求上,您可能会遇到超时错误。对于异步请求,完成请求(包括重试尝试)最多可能需要一个小时。例如,如果您进行查询以尝试为许多广告级对象获取大量数据。 建议
查询失败的时间没有明确的限制。当它超时时,尝试通过放入日期范围之类的过滤器将查询分解为更小的查询。 唯一指标的计算非常耗时。尝试在单独的调用中查询唯一指标以提高非唯一指标的性能。 速率限制
Facebook Insights API 利用速率限制来确保我们所有合作伙伴的最佳报告体验。如需更多信息和建议,请参阅我们的 Insights API Limits & Best Practices.
关于facebook - 来自此广告帐户的调用过多。稍等一下,然后重试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26095355/