什么时候使用 getGraphObject 和 getGraphEdge

when do you use getGraphObject and getGraphEdge

我正在开发一个基于 php 的站点并将一些 facebook sdk 集成到其中以获取一些基本的用户信息。我一直 运行 关注的一件事是,当我向图表发出请求时,我如何知道我应该使用 getGraphObject 还是 getGraphEdge?我还没有看到任何直观的信息告诉我这一点。

我是 运行 php-sdk4 -> 版本 5

这是我昨晚 运行 研究的一个例子..

$response = $fb->get('/me/friends', $fbToken);
$fbfriends = $response->getGraphEdge()->asArray();

documentation 中,如果您查看 php 示例,他们使用 getGraphObject。但是当我使用它时,我收到一条错误消息,告诉我应该使用 Edge。有很多 "get" 函数,但我没有看到任何告诉我如何知道使用什么的东西。 getGraphObject、getGraphEdge、getGraphUser 等。我很想深入了解这个,因为它对我来说是一个猜谜游戏。

基本上,当:

  • 获取 /{node-id},您应该使用 getGraphNode()getGraphObject() 已弃用)
  • 获得/{node-id-with-known-type},你应该使用getGraph{Type}()
    例如,获取 /me 然后使用 getGraphUser(),获取 /{event-id} 然后使用 getGraphEvent()
  • 获取 /{node-id}/{edge-name},您应该使用 getGraphEdge()getGraphList() 已弃用)
  • 获得/{node-id}/{edge-name-with-children-known-type},你应该使用getGraphEdge({children-type-class})
    例如,获取 /me/albums 然后使用 getGraphEdge('GraphAlbum')
    节点 class 名称在 Facebook\GraphNodes 命名空间中。