Instagram访问令牌出现无效错误



如何使用访问令牌和用户id在我的网站主页上显示我帐户的Instagram图像?

我遵循了这个指南并获得了Instagram访问令牌和用户idhttps://developers.facebook.com/docs/instagram-basic-display-api/getting-started

有了这个指南,我得到了我的长期访问令牌

但是当我在PHP 中运行以下代码时

$access_token="--elided--";
$photo_count=6;
$json_link="https://api.instagram.com/v1/users/self/media/recent/?";
$json_link.="access_token={$access_token}&count={$photo_count}";
echo json_link;

它显示:

提供的访问令牌无效

如何在我的网站上显示Instagram媒体?

该指南对我也不起作用。最终,我按照这里描述的程序弄明白了这一点。

需要记住的几个关键点:

  • 正在从Facebook为开发者生成代币,而不需要像以前那样发布请求
  • 要获取照片,您需要对API进行多个调用:一个用于获取照片的ID,然后对每个ID单独调用一个以获取实际数据(permalink、图像URL、说明等(
  • 你每小时可以拨打的电话是有限制的,正如我所意识到的,在流量适中的网站上可以很容易地拨打。所以,你需要以某种方式缓存结果(在WordPress上,我使用了一个瞬态,这似乎很好(
  • 代币在60天后过期,您需要及时刷新它,以便您的应用程序继续工作

我有点晚了,但可能会尝试使用不同的API URL。我也陷入了这个问题,试图使用

https://api.instagram.com/v1/users/self/media/recent/?...

但后来发现这个地址

https://graph.instagram.com/me/media?fields=media_url,media_type&access_token=。。。

使用此URL对我有效。要放入字段的其他内容=

我会建议在cmd中使用curl或下载Postman 进行测试

同样,如果你遵循了这个指南,你最终会得到一个短命的代币。在本教程中有一种方法可以将其兑换为长期代币

但你真正需要做的就是准备好URL

https://graph.instagram.com/access_token?grant_type=ig_exchange_token&
client_secret={client_secret}&
access_token={token}

其中

  • client_secret是您的instagram秘密(developers.facebook.com=>我的应用程序=>=>在左侧面板上单击"instagram基本显示">
  • token是您从有问题的教程(本教程(中获得的短暂的token

最新更新