【问题标题】:Instagram access token to retrieve any user feedInstagram 访问令牌以检索任何用户提要
【发布时间】:2013-08-16 19:14:22
【问题描述】:

我可以使用相同的 access_token 获得 任何用户 供稿是否正常?这里有两个例子。第一个来自测试帐户,这是我应该可以访问的。第二个来自 ImagineDragons 的 Instagram 供稿。

https://api.instagram.com/v1/users/510573486/media/recent?access_token=510573486.ab7d4b6.d8b155be5d1a47c78f72616b4d942e8d

https://api.instagram.com/v1/users/20282699/media/recent?access_token=510573486.ab7d4b6.d8b155be5d1a47c78f72616b4d942e8d

如果是这样,为什么我必须请求 access_token 才能执行请求?

【问题讨论】:

    标签: access-token instagram


    【解决方案1】:

    需要令牌,因此无法匿名访问 API。 Instagram 照片是公开的,除非用户明确将其帐户设置为私密。因此,能够使用单个有效令牌访问任何公共用户帐户的提要是正常的。

    令牌不会绕过用户的设置。如果您尝试访问标记为私有的帐户,您将不会得到任何结果,而是会收到以下响应:

    {"meta":{"error_type":"APINotAllowedError","code":400,"error_message":"you cannot view this resource"}}

    【讨论】:

    • 非常感谢,我不知道您可以拥有私人帐户 Instagram 帐户。这现在说得通了。
    【解决方案2】:

    大多数 API 都是这样工作的。即使您正在请求公共数据(例如,Imagine Dragon 的 Instagram 订阅源),他们也想知道是谁在提出请求。他们可能正在跟踪它,以确保没有人每天打十亿个电话。

    【讨论】:

    • 这并不完全正确。大多数 API 确实需要一个客户端 ID,它可以识别哪个 app 正在发出请求。访问令牌用于识别正在尝试发出请求的用户
    【解决方案3】:

    根据:Instagram Developer Documentation

    您尝试进行的 API 调用始终需要access_token。这样做通常是为了防止机器人不断地爬过最近的列表来获取图像等。 Instagram 可以防止这种情况的唯一方法是通过这种access_token 方法。获得令牌后,您就可以浏览任何用户的提要,就像您可以在相应用户的网页上一样。如果您不希望用户登录以查看某个最近的列表,您可以在 Instagram 注册一个虚拟帐户,登录一次,并存储其access_token,将其与您的应用程序捆绑,您将能够请求最近的提要,而不提示用户登录。我确信这不是解决此问题的公认方法,主要是因为根据文档,access_token 可能随时更改,从而使您的应用程序无法运行。当然,即使是这种情况也有解决方案。总而言之,我认为如果您想在没有access_token 的情况下请求此类数据,请尝试我的“解决方案”。

    【讨论】:

    • 我知道这一切。我想知道为什么使用单个 access_token 我可以收集任何用户提要。私人账户使人知道。另外,一个简单的机器人可以从 www 周围的页面中搜索,以在发出这些 javascript 请求的网站中找到此类 access_token。令牌就在 GET 请求中。
    猜你喜欢
    • 1970-01-01
    • 2013-01-05
    • 2020-05-08
    • 1970-01-01
    • 1970-01-01
    • 2015-09-08
    • 1970-01-01
    • 2021-11-11
    • 1970-01-01
    相关资源
    最近更新 更多