Facebook api:(#4)达到了申请请求限制

Ron*_*yam 40 facebook opengraph facebook-graph-api

自11月下旬以来,我们正在达到Facebook API的应用程序限制.我们正在获取用户的照片,并选择了25张朋友照片→这是在用户签名时完成的(我们正在为用户构建相册).

上述行动有限,但直到11月底才受到限制.我们正在使用批量调用来从相册中获取照片 - 有没有更好的方法来获取此信息而不受限制?

顺便说一句,根据Facebook的说法,我们每天拨打1M电话,但根据我们的统计,我们每天拨打180K电话.

在没有他朋友的照片的情况下仅获取用户的照片对我们来说不是解决方案.

Sim*_*ias 36

Facebook API限制并没有真正记录,但显然它是这样的:每600秒600个呼叫,每个令牌和每个IP.由于网站受到限制,引用相关部分:

经过与Facebook平台团队的一些测试和讨论后,我没有官方限制或者可以在文档中找到.但是,我发现600个电话每600秒,每个令牌和每个IP就是他们阻止你的地方.我也看到了一些基于应用程序的速率限制,但没有任何数字.

作为一般规则,每秒一次呼叫不应该限制速率.从表面上看,这似乎非常严格,但请记住,您可以批量调用某些调用并使用订阅API来获取更改.

您可以通过Javascript SDK访问客户端的Graph API; 我认为,如果您从客户端application limit出示您的照片请求,您将不会点击任何用户(每个具有唯一ID的用户)获取数据,而不是您的应用程序服务器(唯一ID).

如果您所做的一切都通过服务器,这可能意味着巨大的重构.但是,如果您有这么多请求(因为它会让您的服务器喘不过气来),它似乎是最好的解决方案.

否则,您可以尝试batch请求,但我猜您已经采用这种方式,如果您有大量流量.


如果没有任何效果,根据Facebook平台政策,您应该联系他们.

如果您超过或计划超过以下任何阈值,请与我们联系,因为您可能需要遵守附加条款:(> 5M MAU)或(>每天100M API调用)或(>每天50M印象).

  • 策略限制指的是您需要与Facebook签订合同的点 - 导致该错误消息的限制通常是每个令牌限制每600秒600次调用,或者CPU使用限制(如果最大可能是您正在阅读批量Feed数据或见解) - IP限制仅适用于您的应用调用没有访问令牌的情况 (3认同)

Jes*_*ebb 17

文档者"限幅图形API率"表示,与代码中的错误#4是一个应用级别速率限制,这是比不同用户级的速率限制.虽然它没有给出任何确切的数字,但它将应用程序级别的速率限制描述为:

此速率限制适用于应用级别的全局.广告API呼叫被排除在外.

  • 速率限制在滑动窗口上实时发生过去一小时.
  • 收集统计数据,包括调用和查询的数量,花费的CPU时间,每个应用程序使用的内存.
  • 每个资源都有一个限制乘以给定应用的每月活跃用户.
  • 当应用程序使用超过其允许的资源时,将引发错误.
  • 错误,代码:4,消息:达到应用程序请求限制

文档还提供了避免速率限制的建议.对于应用级别限制,它们是:

建议:

最后,文档提供以下信息提示:

  • 批量呼叫不会减少api呼叫的数量.
  • 进行并行呼叫不会减少api呼叫的数量.