Instagram API使用客户端ID抛出OAuthAccessTokenException 400错误

时间:2016-06-01 22:35:06

标签: instagram instagram-api

我使用以下api从公共帐户中获取最新的3个帖子以显示在网站上:

https://api.instagram.com/v1/users/{user-id}/media/recent/?client_id={client-id}&count=3

我创建了一个应用来获取客户端ID 但是从今天开始,此API已经开始抛出以下异常:

{
    meta: {
        error_type: "OAuthAccessTokenException",
        code: 400,
        error_message: "The access_token provided is invalid."
    }
}

请告诉我如何解决这个问题?

5 个答案:

答案 0 :(得分:13)

根据日期,您可能有一个较旧的应用程序,今天受到API迁移的影响,就像我的一样。简而言之,Instagram决定通过要求每个用户对所有API请求进行身份验证来使他们的平台开发变得更加烦人,即使对于用户公开共享的数据也是如此。所以你(像我一样)可能会完全重新设计你的应用程序。

告诉,登录instagram.com/developer并点击管理客户端;然后点击你想要使用的一组键旁边的编辑。接近顶部,它将有一个名为“客户端状态”的部分 - 如果您的部分显示“沙盒模式”,那么欢乐时光!希望你与不到10个用户进行互动并且可以保持沙盒模式,否则你将不得不写一篇文章,拍摄视频,并且基本上请求获得你的权限(可能在几个月内,当一些Instagram实习生最终挖掘他在一堆应用程序中向你致敬)。如果它读了一些东西,你就会有另外一个问题,应该感谢你的幸运星。

与此同时,我想我会回到向我们很多很多附属Instagram帐户的维护人员发送数十封电子邮件来解释问题并尝试获取权限,所以只要我们获得批准,所有我们的社交媒体展示在星期六的大型活动中没有被打破。另一种选择可能是使用无OAuth的json响应available here,但这可能会破坏服务条款。

答案 1 :(得分:5)

我有一个解决方案。如果你使用相同的代码,那很可能。我用它来拉最后两张图片。

https://api.instagram.com/v1/users/{user-id}/media/recent/?client_id={client-id}&count=3

我所做的工作如下:

  1. 登录您用作申请的Instragram帐户。

  2. 转到开发人员(API)区域。 https://www.instagram.com/developer/clients/manage/

  3. 管理客户。确保您的网站网址与有效的重定向网址相同。
  4. 添加新的沙盒用户。放入您想要覆盖的IG照片的帐户。
  5. 点击此网址:https://api.instagram.com/oauth/authorize/?client_id=CLIENTID&redirect_uri=REDIRECT_URI&response_type=token,其中客户ID与您之前在上一个应用中使用的客户ID相同。
  6. 您应该返回并访问令牌网址。复制您的访问令牌。
  7. 以您想要IG照片的帐户登录。您作为沙盒用户添加的帐户,然后转到开发人员并批准Sandbox邀请。
  8. 使用您的访问令牌将上面的原始网址从https://api.instagram.com/v1/users/{user-id}/media/recent/?client_id={client-id}&count=3更改为https://api.instagram.com/v1/users/self/media/recent/?access_token=ACCESS_TOKEN
  9. 这是IG API Media端点文档:https://www.instagram.com/developer/endpoints/users/

    之后,这一切对我有用,当你在沙盒中时,你应该能够拉出最后3张照片,或者在这一点上,找出如何阅读JSON来做到这一点。

答案 2 :(得分:1)

6月1日Instagram平台发生变化后,您的应用是否获得批准?

http://developers.instagram.com/post/145262544121/instagram-platform-update-effective-june-1-2016

答案 3 :(得分:0)

由于某种原因,令牌不再有效。再次请求。

令牌不再有效的可能原因:

  • 更改密码
  • 验证了帐户
  • 从其他国家/地区登录

答案 4 :(得分:0)

如果您要检索用户媒体文件,请尝试此操作,它对我有用

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