Gan*_*ini 6 php facebook facebook-graph-api
我已经浏览了Facebook提供的Realtime Update API文档并成功订阅了"page"对象,字段为"feed",下面是我使用的订阅URL检查
网址: - https://graph.facebook.com//subscriptions?access_token =
这给了我以下回应
响应:-
{
"data": [
{
"object": "page",
"callback_url": <CALLBACK_URL>,
"fields":
[
"feed"
],
"active": true
}
]
}.
Run Code Online (Sandbox Code Playgroud)
此响应明确指出App已订阅页面上的订阅源.
但我的问题是我无法接收任何实时更新.
下面是CALLBACK_URL php文件代码
<?php
define('VERIFY_TOKEN', <APPSECRET_KEY>);
$method = $_SERVER['REQUEST_METHOD'];
if(!empty($method))
{
if (!empty($_GET) && strcmp($method, 'GET') == 0 && strcmp($_GET['hub_mode'], 'subscribe') == 0 && $_GET['hub_verify_token'] == VERIFY_TOKEN)
{
echo $_GET['hub_challenge'];
}
else if (strcmp($method, 'POST') == 0)
{
file_put_contents(<FILE_PATH1>, "inside post method");
if (isset( $_SERVER['HTTP_X_HUB_SIGNATURE'] ) )
{
file_put_contents(<FILE_PATH2>, "inside post method");
$post_body = file_get_contents("php://input");
$object = json_decode($post_body);
file_put_contents(<FILE_PATH3>, json_encode($object));
if ($_SERVER['HTTP_X_HUB_SIGNATURE'] == "sha1=" . hash_hmac('sha1', $post_body, VERIFY_TOKEN))
{
//REST OF THE CODE TO SAVE IN DB
}
}
}
}
else
{
echo "Invalid Request, might be for testing purpose";
}
?>
Run Code Online (Sandbox Code Playgroud)
Facebook没有向我的CALLBACK_URL发送任何POST请求.如果我遗失任何东西,请告诉我
最后我找到了答案,只是对下面的URL发出了POST请求
https://graph.facebook.com/PAGE_ID/tabs?app_id=APP_ID&access_token=PAGE_ACCESS_TOKEN
然后,我开始接收Facebook实时更新
| 归档时间: |
|
| 查看次数: |
1271 次 |
| 最近记录: |