格式化GET请求以检索Instagram用户“self”的所有媒体项的正确方法是什么?

时间:2017-08-01 22:31:15

标签: api parameters count instagram media

关注https://www.instagram.com/developer/endpoints/users/我已经收集到调用https://api.instagram.com/v1/users/self/media/recent/?access_token=ACCESS-TOKEN将返回“access_token所有者发布的最新媒体”。

在沙箱模式下,我了解到此次通话最多可收到20个媒体项目。我也意识到响应代码有一个分页对象,我可以使用它来检索多达20个媒体项目(见下文)

"pagination":  {
    "next_max_tag_id": "1387272337517",
    "deprecation_warning": "next_max_id and min_id are deprecated for this endpoint; use min_tag_id and max_tag_id instead",
    "next_max_id": "1387272337517",
    "next_min_id": "1387272345517",
    "min_tag_id": "1387272345517",
    "next_url": "https://api.instagram.com/v1/tags/cats/media/recent?access_token=xxx&max_tag_id=1387272337517"
}

这些是此请求的列出参数。

PARAMETERS 
ACCESS_TOKEN    A valid access token. 
MAX_ID          Return media earlier than this max_id. 
MIN_ID          Return media later than this min_id. 
COUNT           Count of media to return.

我的问题是:有没有办法以一种方式来构建我的GET请求,以便从一次调用中返回所有媒体项?我知道,如果用户拥有超过20个媒体项目,则在沙盒模式下无法实现这一点。如果可能,请提供COUNT参数的详细说明。

我想可能的GET请求看起来像https://api.instagram.com/v1/users/self/media/recent/?access_token=ACCESS-TOKEN?COUNT=X

谢谢。 < 3

1 个答案:

答案 0 :(得分:0)

当你进入实时模式时,你可以使用protected $except = [ route('route.name'), ]; 参数在一个API调用中获得超过20个,但是我注意到route('route.name',['itemid' => $item_id]); 是此API调用的最大值,甚至如果你超过33,它只会返回33。

您仍然必须使用JSON响应中的count=来获取下一组媒体项,最简单的方法是使用count=33进行API调用并获取下一组媒体项