我正在用户表中的 online_presence 字段使用Facebook API 实时更新,这是我使用的php代码。
https://developers.facebook.com/docs/graph-api/real-time-updates/
$con=mysqli_connect("host","username","password","db_name");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
mysqli_query($con,"INSERT INTO `db_name`.`table_name` (`value`) VALUES ('Test');");
$verify_token = 'spydertest';
if ($_SERVER['REQUEST_METHOD'] == 'GET' && isset($_GET['hub_mode'])
&& $_GET['hub_mode'] == 'subscribe' && isset($_GET['hub_verify_token'])
&& $_GET['hub_verify_token'] == $verify_token) {
echo $_GET['hub_challenge'];
mysqli_query($con,"INSERT INTO `db_name`.`table_name` (`value`) VALUES ('Subscription Test');");
} else if ($_SERVER['REQUEST_METHOD'] == 'POST') {
$post_body = file_get_contents('php://input');
$obj = json_decode($post_body, true);
// $obj will contain the list of fields that have changed
mysqli_query($con,"INSERT INTO `db_name`.`table_name` (`value`) VALUES ('$post_body');");
}
mysqli_close($con);
?>
这是我的Facebook应用程序的实时更新设置
订阅测试成功,实时更新也适用于好友字段,并在我添加或删除好友时收到回调,但 online_presence 字段无法正常工作我改变了用户或朋友的存在。