php - FB Graph API 查询在 PHP SDK 中不起作用

标签 php facebook-graph-api facebook-php-sdk

图形 API:2.4
PHP SDK: "facebook/php-sdk-v4": "~5.0"

我想通过 PHP 和 PHP SDK 获取有关页面的详细信息。 使用查询:

$response = $fb->get('/' . $sPageID . '?fields=posts', $_SESSION['facebook_access_token']);

返回包含大量数据的帖子。但不幸的是错误的值(value)观:
例如,喜欢的限制 25 在这里适用。因此,即使一篇帖子应该有 150 个赞,如果我执行 count ($post['likes']) 结果我只会得到 25 个。

所以我尝试根据 Graph Explorer 更改我的查询 这似乎工作正常: PAGE_ID/posts?fields=likes.limit(100),message,comments,shares,picture,link,type

现在我无法将其转换为我的 PHP 调用。 我收到超时和

Fatal error: Uncaught exception 'Facebook\Exceptions\FacebookSDKException' with message 'Unable to convert response from Graph to a GraphNode because the response looks like a GraphEdge. Try using GraphNodeFactory::makeGraphEdge() instead.' in ...

这是否可以通过 PHP 中的一个查询来实现,还是我必须运行多个查询,每个帖子一个?

最佳答案

我找到了这个 answer ,如果因为这个请求的终点是一个 GraphEdge,那么试试这个:

// Get basic info on the user from Facebook.
try {
    $response = $fb->get('/' . $sPageID . '?fields=posts', $_SESSION['facebook_access_token']);

} catch (Facebook\Exceptions\FacebookSDKException $e) {
    dd($e->getMessage());
}
$getGraphEdge = $response->getGraphEdge();

希望对你有帮助

问候。

关于php - FB Graph API 查询在 PHP SDK 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31759593/

相关文章:

jquery - 动态 Facebook Open Graph 标签可能吗?

php - facebook-php-sdk 与 facebook-php-sdk-v4

php - 使用 Facebook 的 PHP SDK v4 创建用户拥有的 Open Graph 对象

使用/cURL 将数据发布到数据库时的 PHP/SQL 问题

php - 使用 PHP 将大型 CSV 文件导入 MySQL 数据库并检查重复项

php - 如何在 ion auth codeigniter 中创建子组?

php - 从非英语语言下载文件名时未正确显示在下载的文件上

node.js - 无法使用node.js与facebook的图形API交互

ios - Cordova / ionic Facebook getLoginStatus 不工作

php - symfony2测试带有发布数据的客户请求