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


Not receiving realtime updates at all from Facebook

我已经设置了我的服务器以接收来自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。我有几个用户通过了该应用程序的身份验证,我们都在脸书上尝试过各种方法来尝试和触发它(状态更新、帖子等)。我可以从API的正常休息中提取他们的饲料等。

我一定错过了什么,我还需要做什么才能让它发挥作用?!

对于那些使用PHP的人。。。

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

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

然后,您可以通过以下操作将其转换为数组:

$realtime = json_decode($json, true);

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

在我的案例中,我接受GET请求,但不接受回调URL上的POST请求。