Instagram使访问令牌无效。我以为他们没有?

时间:2015-02-07 23:39:21

标签: facebook oauth oauth-2.0 instagram access-token

据我所知,Instagram不会根据文档使访问令牌无效。但对于使用我的应用程序构建在其API上的数千名成千上万的用户来说,情况似乎并非如此。

在最初构建应用程序时,我最初提到了以下SO问题,以及其他一些问题 - 但我得出结论(或者我认为)Instagram不会使令牌无效,这似乎不是真的:{ {3}}

我们的应用程序在一天的特定时间代表用户提出请求。这是一个用户可能只需登录一次即可使用该服务的应用程序。

在这里,例如是4天前注册的用户 - 他的服务工作一直很好,直到今天早上,在测试他的访问令牌时,我们收到了这个回复:

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

为什么会在4天前有效的访问令牌上发生这种情况?我们询问了特定用户,如果他撤销了对我们的应用程序的访问权或其他任何内容,则会返回此错误,但他没有。

我很好奇他是否可能更改了他的IG密码,这使他的应用程序访问令牌无效(虽然这看起来不太可能导致这种情况?)

有没有其他人有Instagram应用随机无效访问令牌的经验?

另请注意,99%的用户在一个月或更长时间内使用我们的应用程序从未遇到此问题。我们只遇到过3到5个其他帐户。

2 个答案:

答案 0 :(得分:0)

这不是随机的。事实上,在这两种情况下,访问令牌可能无效:

  • 用户更改了密码或被迫更改密码(当IG认为您的帐户遭到入侵时)。

  • 他们删除了访问令牌链接到的应用。 (或者如果他们怀疑垃圾邮件行为,IG会强制删除该应用程序)

但他们不会从时间到期。

答案 1 :(得分:0)

根据自己的经验,令牌可以在以下情况下失效:

  • 用户删除了应用
  • Instagram帐户被临时锁定,如果Instagram用户从未知设备/位置(例如另一个国家/地区)登录,则可能发生这种情况。通过插入SMS代码要求用户确认身份。 第二种情况可能是Instagram的bug。为什么每次帐户临时锁定时,应用令牌都会过期?想从Instagram上得到答案。

注意:如果用户更改密码,则令牌不会过期。