【发布时间】:2014-05-04 03:28:39
【问题描述】:
我在使用 Facebook API 的 PHP 中遇到了一个非常奇怪的问题。所有这些代码都在我的测试服务器(共享主机)中运行。但是当我在生产服务器(Heroku)中运行它时,我得到了一个错误。
我要做的是在我的应用用户喜欢(或不喜欢)新页面时从 Facebook 接收实时更新。 这是 Facebook 提供的文档:https://developers.facebook.com/docs/graph-api/real-time-updates
我要订阅的代码:
$facebook = new Facebook(array(
'appId' => $app_id,
'secret' => $app_secret,
'cookie' => true
));
$facebook->api(
"/" . $app_id . "/subscriptions", "POST", array(
'object' => 'user',
'callback_url' => 'http://' . $url . '/rtu/callback',
'fields' => 'likes',
'verify_token' => $rtu_verify_token,
'access_token' => $app_id . "|" . $app_secret
)
);
我在回调中的代码:
if (isset($_GET['hub_verify_token']) && isset($_GET['hub_challenge'])) {
$rtu_verify_token = Config::get('variables.rtu_verify_token');
if (($_GET['hub_verify_token'] == $rtu_verify_token)) {
echo $_GET['hub_challenge'];
die();
}
}
$data = file_get_contents("php://input");
$json = json_decode($data);
错误:
FacebookApiException (#2200) 回调验证失败:操作 6001 毫秒后超时,收到 0 个字节
我已经验证了 app_id、url 和 app_secret 变量。 同样,这适用于我的测试服务器,但不适用于 Heroku。 我什至尝试不使用 Facebook API 并进行 cURL 调用,但我得到了同样的错误。
我认为这可能与 Heroku 有关,但我找不到任何证据。
谢谢
【问题讨论】:
标签: php facebook subscriptions real-time-updates