Facebook应用被限制,什么是gr:post:User / external_edge

时间:2012-12-17 22:39:32

标签: facebook facebook-graph-api facebook-insights throttling

我们的应用目前受到限制,我们正在

{
  "error": {
    "message": "(#4) Application request limit reached", 
    "type": "OAuthException", 
    "code": 4
  }
}

App - > Insights - > Developer - > Activity & Errors我们看到了

Restrictions
App is unrestricted.

API Throttling
None during specified period.

所以看起来我们不应该受到限制,但我可以看到警告,

Calls Are Too CPU Intensive  - 2 hours, 38 minutes
Method  Fraction of Budget

gr:post:User/external_edge  109%
gr:post:User/scores 1.8%
gr:get:User/external_edge   1.8%
gr:get:/fql 1.2%
ui:feed:async:get:  0.43%
gr:post:OpenGraphAction/commen  0.15%
ui:apprequests:iframe:get:  0.08%
gr:delete:Post  0.04%
gr:delete:  0.02%
ui:feed:async:post: 0.02%

我认为这意味着我们经常向User / external_edge发帖...但我不知道User / external_edge是什么 - 我该如何找到它?

在切断API之前,我们也不应该收到电子邮件或警告吗?我们需要做些什么才能不受限制?

1 个答案:

答案 0 :(得分:2)

一段时间后,限制自动重置,我认为这是一个600秒的滚动窗口,用于计算限制,但如果实际达到限制,可能会将阻塞延长到3600秒;不幸的是,在API响应中没有办法看到你与CPU和调用限制有多接近,特别是CPU限制很难预测,因为调用处理它们所需的资源差别很大。

gr:post:User/external_edge是Open Graph操作,其他方法以连接名称命名(例如gr:post:User/scores是图谱API(gr)POST请求(post )针对scores对象的User连接

如果您的应用受到限制并且您没有为每个用户发布大量操作,请检查正在使用哪个访问令牌来制作帖子;如果它是应用访问令牌,请使用用户访问令牌代替发布帖子的用户