【问题标题】:Instagram API: I get no access_tokenInstagram API:我没有 access_token
【发布时间】:2017-06-06 13:53:31
【问题描述】:

我正在使用this PHP Instagram Client 尝试访问 Instagram 的 API,但每次尝试访问它时都会收到此消息:

object(stdClass)#4 (1) {
  ["meta"]=>
  object(stdClass)#2 (3) {
    ["code"]=>
    int(400)
    ["error_type"]=>
    string(25) "OAuthAccessTokenException"
    ["error_message"]=>
    string(37) "The access_token provided is invalid."
  }
}

我无法弄清楚我做错了什么。

这是我目前的代码:

$instagram = new MetzWeb\Instagram\Instagram('......');
$result = $instagram->getPopularMedia();
var_dump($result);

当我检查我的$instagram 对象时,里面的数据似乎不正确,因为似乎没有访问令牌。

object(MetzWeb\Instagram\Instagram)#3 (7) {
  ["_apikey":"MetzWeb\Instagram\Instagram":private]=>
  string(32) "...."
  ["_apisecret":"MetzWeb\Instagram\Instagram":private]=>
  NULL
  ["_callbackurl":"MetzWeb\Instagram\Instagram":private]=>
  NULL
  ["_accesstoken":"MetzWeb\Instagram\Instagram":private]=>
  NULL
  ["_signedheader":"MetzWeb\Instagram\Instagram":private]=>
  bool(false)

我错过了什么?

【问题讨论】:

  • 您必须实现文档中列出的getLoginUrl / getOAuthToken 流程。

标签: php instagram instagram-api


【解决方案1】:

你可以在 github 仓库中看到:

注意:Instagram 于 2015 年 11 月 17 日对其 API 进行了更改。应用 在 2015 年 11 月 17 日之前创建的应用程序在 2016 年 6 月之前不会受到影响。 在 2015 年 11 月 17 日或之后创建的将需要使用其更新的 API。 请注意,这个库还不支持他们的新更新。 如需更多信息,请参阅#182。

意味着该库尚不支持最新的 Instagram API。

更新: Instagram 只允许经过身份验证的 API 调用,不再允许公开调用。

绕过公开电话的唯一方法是从 Instagram 中“抓取”数据。那里有几个刮刀。

它基本上获取:https://www.instagram.com/jerryseinfeld/media/ 并解析 JSON。您可以通过从消息中获取#tags 来获取所有标签。

【讨论】:

  • 触摸!警告在标题前面是如此清晰,以至于我不敢相信我错过了它-_- 感谢您的建议和替代方案。
  • 不过很有趣!你给我的第一个替代库给我带来了完全相同的问题!第二个没有,但遗憾的是没有按标签搜索的能力,这正是我要寻找的......
  • @EnriqueMorenoTent,嗯,这很奇怪。您可以尝试使用原始库中的分叉存储库:github.com/propeopleua/Instagram-PHP-API,其中应该包含修复。
  • "propeopleua" 不是我原来的库。这是你推荐的。
  • 是的,但它是您使用的 github.com/cosenary/Instagram-PHP-API 的一个分支。
猜你喜欢
  • 1970-01-01
  • 2016-10-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-19
相关资源
最近更新 更多