根本没有收到来自 Facebook 的实时更新

Posted

技术标签:

【中文标题】根本没有收到来自 Facebook 的实时更新【英文标题】:Not receiving realtime updates at all from Facebook 【发布时间】:2012-07-30 15:08:56 【问题描述】:

我已经设置了我的服务器以接收来自 facebook 的实时更新,我已经完成了身份验证以获取令牌等,注册了回调 url...自身份验证 GET 请求以来我没有收到任何通知.

当我GET graph.facebook.com/APP-ID/subscriptions 我收到...

data: [

  object: "user",
  callback_url: "REDACTED-VAID-URL",
  fields: [
    "activities",
    "books",
    "checkins",
    "events",
    "feed",
    "friends",
    "interests",
    "likes",
    "location",
    "movies",
    "music",
    "television"
  ],
  active: true

]

据我所知,实时通知设置正确。 当我将自己的 POST 发送到回调 URL 时,服务器每次都会通过电子邮件向我发送 POST 详细信息,但在 Facebook 更新后我从未收到过此消息,所以我很确定它只是没有点击 URL。 我有几个用户通过该应用程序进行了身份验证,我们都在 facebook 上尝试了各种方法来尝试触发它(状态更新、发布等)。我可以从普通的 rest API 中提取他们的提要等。

这里一定有一些我只是想念的东西,我还需要做什么才能让它工作?!

【问题讨论】:

我和你在这个上的完全一样。我设法正确设置了订阅,但我没有收到任何通知。.. 赞成! 并不是一个真正的答案,但是,作为对 Alexander 就这个问题和相关问题对我的 ping 的回应:恐怕我没有什么可提供的。假设您在 Facebook 上的应用程序配置正确(似乎是这样,因为您获得了正确的订阅信息),我唯一的想法是确保来自 Facebook 的点击能够通过您的网络/防火墙/等/ 到你的服务器。 Facebook 的其他热门歌曲是否出现了?您是否尝试过从您的直接网络之外的某个地方发布到回调 url?对不起,我不能提供更多帮助...... 我实际上已经能够测试我是否可以接收来自 facebooks 服务器的通知,我找到了创建测试用户的选项,并且当我作为测试用户发布内容时我会收到通知。我偶尔会收到来自 facebook 上真实用户“喜欢”页面的通知,但是这只是偶尔发生在某些用户身上,而不是全部,而且我从未收到过用户发布内容的通知。这一定是脸书端的问题,我打开了一个但报告但一个多星期没有收到任何反馈。 【参考方案1】:

对于那些使用 php...

Facebook 的实时 POST 数据无法通过 PHP 中的普通 $_POST 数组传入或识别。您可以使用以下内容获取构成对服务器的请求的原始 JSON:

$json = file_get_contents("php://input");

然后您可以通过以下方式将其转换为数组:

$realtime = json_decode($json, true);

然而,太糟糕了,Facebook 在这些请求中为您提供的数据大多毫无价值:-/

【讨论】:

+1 获取有关获取 POST 数据的提示。此外,Facebook 提供给您的数据也并非毫无价值。它们会告诉您哪个对象发生了变化,然后由您决定再次调用图表以获取更新的数据。【参考方案2】:

在我的例子中,我接受了 GET 请求,但没有接受回调 URL 上的 POST 请求。

【讨论】:

以上是关于根本没有收到来自 Facebook 的实时更新的主要内容,如果未能解决你的问题,请参考以下文章

“不支持的获取请求” - 页面的 Facebook 实时更新

iOS:没有收到来自 Facebook 应用请求的通知

来自 C# 的 IP Cam 实时提要

实时加载评论的问题

Android 实时应用 - 带有 Facebook 广告的 Google Admob 中介仅显示测试广告

Facebook 实时更新