【问题标题】:Getting an image from a facebook post on a public page从公共页面上的 Facebook 帖子中获取图像
【发布时间】:2016-09-25 11:21:18
【问题描述】:

我正在尝试在我的网站上显示一个 facebook 提要,它正在运行。但我只设法显示帖子的文本,而不是附加的图像(或者如果可能,如果有多个图像,只显示第一个或最大的一个)。

我尝试在 here 中查找正确的名称以使用 API 获取它

这是我现在的代码(在 owl carousel 中显示 Facebook 帖子):

function fetchUrl($url){    
     $ch = curl_init();
     curl_setopt($ch, CURLOPT_URL, $url);
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
     curl_setopt($ch, CURLOPT_TIMEOUT, 20);
     // You may need to add the line below
     // curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);

     $feedData = curl_exec($ch);
     curl_close($ch); 

     return $feedData;

    }

    //App Info, needed for Auth
    $app_id = "1230330267012270";
    $app_secret = "secret";

    //Retrieve auth token
    $authToken = fetchUrl("https://graph.facebook.com/oauth/access_token?grant_type=client_credentials&client_id=1230330267012270&client_secret=secret");

    $json_object = fetchUrl("https://graph.facebook.com/267007566742236/feed?{$authToken}");

    $feedarray = json_decode($json_object);


    foreach ( $feedarray->data as $feed_data )
    {

        if($feed_data->message != ''){
            $facebookfeed .= '
                <div class="item">
                      <div class="product-item">
                            <img class="img-responsive" src="images/siteimages/imgfacebook.jpg" alt="">
                            <h4 class="product-title">'.$feed_data->name.'</h4>
                            <p class="product-desc">'.$feed_data->message.'</p>
                            <p>'.$feed_data->story.'</p>
                            <img src="'.$feed_data->picture.'">
                            <p><a href="#" class="btn btn-primary">Lees meer</a></p>
                        </div><!-- Product item end -->
                </div><!-- Item 1 end -->';
        }
    }
echo $facebookfeed;

查看 Facebook 文档,我认为 $feed_data-&gt;picture 会起作用,但它什么也没返回。

【问题讨论】:

    标签: php facebook facebook-graph-api


    【解决方案1】:

    为了尝试提高移动网络的性能,v2.4 中的节点和边缘要求您明确请求 GET 请求所需的字段。例如 GET /v2.4/me/feed 默认不再包含 likes 和 cmets,但 GET /v2.4/me/feed?fields=cmets,likes 会返回数据。

    来源:https://developers.facebook.com/docs/apps/changelog#v2_4

    【讨论】:

    • 最后一个问题:我可以从一个 curl 中获取所有数据吗?还是我需要两个?我尝试了以下方法:$json_object = fetchUrl("https://graph.facebook.com/267007566742236/feed?fields=full_picture&amp;{$authToken}"); 但这会阻止返回任何数据。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-07-30
    • 1970-01-01
    • 1970-01-01
    • 2014-04-19
    • 1970-01-01
    • 2015-10-18
    • 1970-01-01
    相关资源
    最近更新 更多