【问题标题】:Not getting any requests for Facebook Real Time page updates没有收到任何 Facebook 实时页面更新请求
【发布时间】:2023-04-02 19:36:01
【问题描述】:

首先,我很抱歉,因为我知道 StackOverflow 上已经有其他与此相关的问题。不幸的是,他们似乎都没有全面的答案,其他人也没有解决我遇到的问题。

我正在尝试在 Facebook 上注册一个页面的实时更新。本质上,当页面管理员发布状态更新或分享某些内容时,我希望收到通知。

图形 API 版本

在开始之前,我想先说明我正在使用 Facebook 的 GRAPH API v2.3。我注意到/app-id/subscriptions GRAPH API edge documentation page 上的一些消息指出“v2.2 中删除了某些功能”。

我没有使用 API v2.2 进行测试,但是如果有人认为它可能相关,我可以测试。我无法想象 Facebook 会删除该功能,但目前我不排除任何可能性。 :)

到目前为止我尝试过的...

我将我的应用设置为具有 标签页 组件,并在应用控制面板中成功填写了所有必需的信息。这是我下一步所必需的,即将应用程序作为选项卡添加到我的页面。

据我了解,我的应用必须是我想要更新的页面上的一个标签,才能接收该页面的更新。 (或者至少,页面需要“安装”应用程序,当应用程序添加为选项卡时会发生这种情况)


我已向/page-id/tabs 发出POST 请求,以便在我的页面上为我的应用创建一个标签。现在,当我向/page-id/tabs 发出GET 请求时,我可以看到我的应用包含在我页面的选项卡列表中:

{
  "id": "app_id/tabs/tab_id", 
  "image_url": "...", 
  "name": "My Tab Name", 
  "link": "...", 
  "application": {
    "name": "My App", 
    "id": "app_id"
  }, 
  "is_permanent": false, 
  "position": 5, 
  "is_non_connection_landing_tab": false
}

我已向/app-id/subscriptions 发出POST 请求,以便为我的应用同时创建userpage 订阅。两个订阅都订阅field 参数。当我向/app-id/subscriptions 发出请求时,我得到以下响应:

{
  "data": [
    {
      "object": "user", 
      "callback_url": "my_callback_url", 
      "fields": [
        "feed"
      ], 
      "active": true
    }, 
    {
      "object": "page", 
      "callback_url": "my_callback_url", 
      "fields": [
        "feed"
      ], 
      "active": true
    }
  ]
}

为了确认一下,当我创建订阅时,我确实收到了对我的回调 URL 的验证请求,并且 - 据我所知 - 成功通过了验证,因为我是在我创建订阅时给出了成功的响应。


最后,我向/page-id/subscribed_apps 发出了GET 请求。我很担心,因为我在此回复中没有看到我的应用:

{
  "data": [
    {
      "name": "Discussion Boards", 
      "id": "2373072738"
    }
  ]
}

问题

因此,在所有这些之后,当我将帖子作为我的页面时,我确实不会收到来自 Facebook 的任何POST 对我的回调 URL 的请求。

可能需要注意的是,我的一位同事使用几乎相同的步骤从他的个人资料中接收user 更新。我目前无法通过我的个人资料接收user 更新,但我认为这是因为我尚未使用我的 Facebook 个人资料对我的应用程序进行身份验证。

问题/想法/理论

  • 我是否遗漏了一些明显(或不那么明显)需要执行的步骤,以便 Facebook 向我发送通知请求?

  • 我的应用是否需要通过 Facebook 的 Login Review 或类似地址才能接收页面更新?

  • 这只是坏了吗?如果是这样,有什么解决方法吗?

【问题讨论】:

  • 不再通过/page_id/tabs创建页面订阅,而是通过/page_id/subscribed_apps,参见developers.facebook.com/docs/apps/changelog#v2_2_new_features
  • 哦?有趣的!我会试试看。我之前曾咨询过/page_id/subscribed_apps 文档here,它仍然指出您无法使用该API 边缘创建任何东西,但是您链接到我的更改日志似乎暗示了其他情况。谢谢!
  • 好的,成功了!随意发布这个作为答案,我很高兴接受它。非常感谢!
  • 这可能会让您了解完整的页面订阅流程:tech-brains.blogspot.in/2015/04/…
  • @JesseDunlap 您是否设法将带有图片的帖子发送到您的 webhook?我正在为类似的订阅而苦苦挣扎 (stackoverflow.com/questions/39135845/…)。到目前为止,我收到了来自 facebook 的新帖子,但不是那些有照片的帖子

标签: php facebook facebook-graph-api


【解决方案1】:

不再通过/page_id/tabs 创建页面订阅,而是通过POST 请求/page_id/subscribed_apps。不需要额外的参数(显然除了页面访问令牌),它会自动为用于发出请求的应用生成订阅。

目前在更新日志中提到了这一点,https://developers.facebook.com/docs/apps/changelog#v2_2_new_features

https://developers.facebook.com/docs/graph-api/reference/v2.3/page/subscribed_apps 下也应该提到它——但看起来 Facebook 正在重组他们的文档(再次),并且还没有完全赶上他们 API 的当前状态。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-07-01
    • 2019-05-26
    • 1970-01-01
    • 2021-11-06
    • 1970-01-01
    • 1970-01-01
    • 2023-03-27
    • 2015-04-05
    相关资源
    最近更新 更多