首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何解析facebook图形api响应

如何解析facebook图形api响应
EN

Stack Overflow用户
提问于 2014-07-23 05:05:50
回答 3查看 15.7K关注 0票数 2

我有一个facebook图形api请求,它返回以下响应

代码语言:javascript
运行
复制
Facebook\GraphObject Object
(
    [backingData:protected] => Array
        (
            [data] => Array
                    (
                        [0] => stdClass Object
                            (
                                [id] => 111
                                [from] => stdClass Object
                                    (
                                        [id] => 111
                                        [name] => fo bar
                                    )

                                [name] => etc

                            )

我试过做$reponse->{'backingData:protected'},但它不起作用。

另外,下一组结果是指向图形api的链接,但其中的结果是纯json。

代码语言:javascript
运行
复制
    [paging] => stdClass Object
        (
            [cursors] => stdClass Object
                (
                    [after] => MTI3NzMzMTQwMzYy
                    [before] => MTAxNTQzNjI5NTY1NDAzNjM=
                )

            [next] => https://graph.facebook.com/v2.0/111/albums?access_token=xxxxv&limit=25&after=yyy
        )

我的代码

代码语言:javascript
运行
复制
    $user_profile = (new FacebookRequest(
        $session, 'GET', '/me/albums'
    ))->execute()->getGraphObject();

    echo '<pre>'; print_r($user_profile); echo '</pre>';
EN

回答 3

Stack Overflow用户

发布于 2014-07-23 05:49:25

下面是方法:

代码语言:javascript
运行
复制
        $user_profile = (new FacebookRequest(
        $session, 'GET', '/me/albums'
        ))->execute()->getGraphObject();
        $album =  $user_profile->getProperty('data');

        $album_data = $album->asArray();//this will do all job for you..
        foreach($album_data as $row){
            var_dump($row);
        }
票数 17
EN

Stack Overflow用户

发布于 2016-03-04 15:23:03

对于Facebook的新版本Graph API v2.5读取数据,如下所示:

代码语言:javascript
运行
复制
$fb = new \Facebook\Facebook([
        'app_id' => 'KEY HERE',
        'app_secret' => 'SECRET HERE',
        'default_graph_version' => 'v2.5',
    ]);
 $asscee_t ="ACCESS TOKEN HERE";
    $response = $fb->get('/me/friends', $asscee_t);
        $get_data = $response->getDecodedBody(); // for Array resonse
        //$get_data = $response->getDecodedBody(); // For Json format result only
        echo $get_data['summary']['total_count']; die; // Get total number of Friends
票数 6
EN

Stack Overflow用户

发布于 2014-07-23 05:41:35

https://developers.facebook.com/docs/php/GraphObject/4.0.0

getProperty

getProperty(string $name, string $type = 'Facebook\GraphObject')获取此图形对象的命名键的值。如果值是标量(字符串、数字等)它将会被退还。如果它是一个关联数组,它将作为GraphObject类型返回给适当的子类类型(如果提供)。

代码语言:javascript
运行
复制
 $user_profile = (new FacebookRequest(
        $session, 'GET', '/me/albums'
    ))->execute()->getGraphObject();

$id = $user_profile->getProperty('id');

https://developers.facebook.com/docs/graph-api/reference/v2.0/album中字段的完整列表

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24897838

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档