Facebook Graph API - 获取页面通知
Facebook Graph API - Get Page Notifications
我刚刚升级到 graph api 2.5 和 PHP SDK 5.0,您获取页面通知的方式似乎已经改变。
以前我可以打电话:
/{page_id}/notifications
并得到这样的回复:
{
"id": "notif_12345_12345",
"from": {
"name": "John Doe",
"id": "12345"
},
"to": {
"name": "Page Name",
"category": "Community",
"id": "12345"
},
"created_time": "2015-11-01T16:23:38+0000",
"updated_time": "2015-11-01T18:10:26+0000",
"title": "John Doe and Jane Doe commented on a link you shared.",
"link": "http://www.facebook.com/page/posts/12345?comment_id=12345"
}
完美,正是我想要的。但是在 2.5 中我得到:
{
"data": [
{
"to": {
"name": "Page Name",
"id": "12345"
},
"id": "notif_12345_12345"
},
{
"to": {
"name": "Page Name",
"id": "12345"
},
"id": "notif_12345_67890"
}
}
我不知道该怎么办?我试过请求:
/notif_12345_67890
但只是 returns 相同的信息。
这几天有图api的通知详情吗?
为了完整起见,这就是我使用 PHP 所做的,尽管也可以在图形浏览器中测试响应。
$sdk = new \Facebook\Facebook([
'app_id' => $app_id,
'app_secret' => $app_secret,
'default_graph_version' => 'v2.5',
]);
$response = $sdk->get($page_id.'/notifications', $access_token);
$graphEdge = $response->getGraphEdge();
// Iterate over all the GraphNode's returned from the edge
foreach ($graphEdge as $graphNode) {
var_dump($graphNode);
}
从 v2.4 开始,您必须指定要返回的字段:
/{page_id}/notifications?fields=name,title,link
子文档有点复杂,但我相信这应该可行:
/{page_id}/notifications?fields=name,title,link,to{name,category}
"Declarative Fields"就是那个:https://developers.facebook.com/docs/apps/changelog#v2_4
我刚刚升级到 graph api 2.5 和 PHP SDK 5.0,您获取页面通知的方式似乎已经改变。
以前我可以打电话:
/{page_id}/notifications
并得到这样的回复:
{
"id": "notif_12345_12345",
"from": {
"name": "John Doe",
"id": "12345"
},
"to": {
"name": "Page Name",
"category": "Community",
"id": "12345"
},
"created_time": "2015-11-01T16:23:38+0000",
"updated_time": "2015-11-01T18:10:26+0000",
"title": "John Doe and Jane Doe commented on a link you shared.",
"link": "http://www.facebook.com/page/posts/12345?comment_id=12345"
}
完美,正是我想要的。但是在 2.5 中我得到:
{
"data": [
{
"to": {
"name": "Page Name",
"id": "12345"
},
"id": "notif_12345_12345"
},
{
"to": {
"name": "Page Name",
"id": "12345"
},
"id": "notif_12345_67890"
}
}
我不知道该怎么办?我试过请求:
/notif_12345_67890
但只是 returns 相同的信息。
这几天有图api的通知详情吗?
为了完整起见,这就是我使用 PHP 所做的,尽管也可以在图形浏览器中测试响应。
$sdk = new \Facebook\Facebook([
'app_id' => $app_id,
'app_secret' => $app_secret,
'default_graph_version' => 'v2.5',
]);
$response = $sdk->get($page_id.'/notifications', $access_token);
$graphEdge = $response->getGraphEdge();
// Iterate over all the GraphNode's returned from the edge
foreach ($graphEdge as $graphNode) {
var_dump($graphNode);
}
从 v2.4 开始,您必须指定要返回的字段:
/{page_id}/notifications?fields=name,title,link
子文档有点复杂,但我相信这应该可行:
/{page_id}/notifications?fields=name,title,link,to{name,category}
"Declarative Fields"就是那个:https://developers.facebook.com/docs/apps/changelog#v2_4