【问题标题】:Instagram Graph API: Media Thumbnail URLInstagram Graph API:媒体缩略图 URL
【发布时间】:2017-09-13 21:29:42
【问题描述】:

我在企业帐户中使用 Instagram Graph API,几乎一切正常。我创建了 Facebook SDK 的 WordPress 端口,检索媒体项的函数如下所示(作为类的一部分,$fb 对象已使用类构造函数中的 default_access_token 进行了身份验证):

public function get_media( $business_account_id = '', $limit = 15 ) {
    $limit = absint( $limit );

    try {
        $response = $this->fb->get( "/{$business_account_id}?fields=media.limit({$limit}){media_url,caption,thumbnail_url,permalink}" );
        return $response->getDecodedBody();
    } catch ( \Facebook\Exceptions\FacebookResponseException $e ) {
        return $e->getMessage();
    } catch ( \Facebook\Exceptions\FacebookSDKException $e ) {
        return $e->getMessage();
    }
}

如您所见,我请求的字段是:media_urlcaptionthumbnail_urlpermalink。 API 会响应除thumbnail_url 之外的所有字段:

array(2) {
    ["media"]=>
    array(2) {
        ["data"]=>
        array(15) {
            [0]=>
            array(4) {
                ["media_url"]=>
                string(91) "https://scontent.xx.fbcdn.net/..."
                ["caption"]=>
                string(356) "[...]"
                ["permalink"]=>
                string(40) "https://www.instagram.com/p/.../"
                ["id"]=>
                string(17) "..."
            }
            ...
        }
        ["paging"]=>
        array(2) {
            ["cursors"]=>
            array(2) {
                ["before"]=>
                string(123) "..."
                ["after"]=>
                string(122) "..."
            }
            ["next"]=>
            string(438) "https://graph.facebook.com/v2.10/..."
        }
    }
    ["id"]=>
    string(17) "..."
}

我使用Graph API Explorer 得到了相同的响应,这让我认为这与我的应用程序有关,可能是权限(当前为manage_pagesinstagram_basic)、特殊设置或错误(我不认为所以,但以防万一......)。

我错过了什么?

【问题讨论】:

  • 你能告诉我你是怎么得到business_account_id的吗?

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


【解决方案1】:

2021 年更新

文档已更新,旧链接不再有效;这是新链接:

https://developers.facebook.com/docs/instagram-basic-display-api/reference/media/#fields

措辞已更新,表明thumbnail_url 字段仅在VIDEO 媒体上可用。


原答案

看起来像thumbnail_url is available on video IG Media objects only。我的解决方案是使用 PHP 处理图像以生成调整大小的媒体对象版本并缓存它们,这样我就不必在每次请求时重新生成它们。

【讨论】:

  • 你是如何用 PHP 处理图像的?当我使用 PHP 访问图像时,我得到了 403。
  • 因为我的用例是 WordPress,所以我使用了media_sideload_image()。如果您正在处理其他事情,可以尝试将 saving images from URL 设置为 allow_url_fopentrue
  • 谢谢! ??我的用例也是 WP。
  • 这是 Instagram 基本显示 API 的解决方案。 Instagram Graph API 有解决方案吗?
猜你喜欢
  • 2019-01-20
  • 1970-01-01
  • 2021-07-19
  • 1970-01-01
  • 1970-01-01
  • 2015-07-14
  • 1970-01-01
  • 2018-06-25
  • 2018-05-19
相关资源
最近更新 更多