Facebook graph api 什么时候使用getGraphObject和getGraphEdge

Facebook graph api 什么时候使用getGraphObject和getGraphEdge,facebook-graph-api,facebook-php-sdk,Facebook Graph Api,Facebook Php Sdk,我正在一个基于php的网站上工作,并将一些facebook sdk集成到其中,以获取一些基本的用户信息。我遇到的一件事是,当我向图形发出请求时,如何知道应该使用getGraphObject还是getGraphEdge?我还没有看到任何直觉告诉我这一点 我正在运行php-sdk4->Version5 这是我昨晚遇到的一个例子 $response = $fb->get('/me/friends', $fbToken); $fbfriends = $response->getGraphEd

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

我正在运行php-sdk4->Version5

这是我昨晚遇到的一个例子

$response = $fb->get('/me/friends', $fbToken);
$fbfriends = $response->getGraphEdge()->asArray();
在中,如果您查看php示例,它们使用getGraphObject。但是当我使用它的时候,我得到了一个错误,告诉我应该使用边缘。有很多“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')

    节点类名称位于
    Facebook\GraphNodes
    命名空间中

这真的很有帮助。找到这方面的文档是一个挑战,因为有太多过时的文档到处都是。即使在今天,这也非常有用。我甚至找不到PHPSDK文档中对这一点的明确解释。你会认为FB会有更好的医生。