【问题标题】:Instagram API request moreInstagram API 请求更多
【发布时间】:2015-12-10 09:10:23
【问题描述】:

https://api.instagram.com/v1/users/self/media/recent/?access_token=my_token&count=30

仅请求 20 个数据。

我想要 30 个数据。

  {
    pagination: { },
    meta: {
    code: 200
    },
    data: [
    {
    attribution: null,
    tags: [...

在 next_max_id 中找不到分页。

但是https://api.instagram.com/v1/users/self/media/recent/?access_token=my_token&count=1

此代码 = next_max_id ok。

你知道我在说什么吗?

对不起,不是墙上的英文文字..

帮帮我~

【问题讨论】:

    标签: pagination instagram


    【解决方案1】:

    通常,每个请求的端点限制为一定数量的项目。为了解决这个问题,端点support pagination。分页由响应中的 pagination 键指示。它可能看起来像这样:

    "pagination": {
        "next_url": "https://api.instagram.com/v1/tags/puppy/media/recent?access_token=fb2e77d.47a0479900504cb3ab4a1f626d174d2d&max_id=13872296",
        "next_max_id": "13872296"
    }
    

    在这种情况下,您可以将 next_max_id 传递给先前发出的请求,以获取从当前响应中未包含的最后一个 id 开始的下一页。您也可以简单地在 next_url 处请求 URL,该 URL 由 Instagram API 自动为您构建。

    您可以通过提供count parameter 来增加端点的页面大小。请注意,每个端点都有一个您不能超过的最大页面大小。因此,您必须在某些时候支持分页才能访问更多项目。

    最后,尽管指定页面大小为 30,但由于您在响应中达到了 20 个项目的数量,因此您很可能被沙盒模式击中。

    Sandbox mode 是对 2015 年 11 月 17 日或之后创建的 Instagram 应用程序的新限制。此限制以各种方式限制应用程序,最值得注意的是,它限制所有端点返回最多 20 个最近的媒体项

    因此,如果您在该日期之后创建了应用程序,那么这正是您遇到的问题。您的应用程序基本上处于测试模式。为了解除这些限制,您需要先审查和批准您的申请。如documentation中所述:

    在您的应用经过审核和批准后,您就可以将其提供给公众了。要将您的客户端从沙盒模式切换到实时模式,您可以使用应用程序配置屏幕顶部的按钮。当您上线时,任何 Instagram 用户都可以授权您的应用,但您只能访问您在审核期间获得的权限。

    【讨论】:

      猜你喜欢
      • 2016-08-02
      • 1970-01-01
      • 1970-01-01
      • 2015-04-23
      • 2015-01-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多