10

如何使用 Instagram gem 获得下一页结果?

API 本身的文档说pagination每个结果都有一个哈希值(参见这里:http: //instagram.com/developer/endpoints/)。如何使用 gem 访问它?

4

4 回答 4

10

知道了。我认为paginationInstagram 传回的哈希值不可访问,但您可以在max_id查询时传入一个选项,以获取下一组较旧的图片。

@results = Instagram.user_recent_media(some_user_id, {access_token: token, count: 10, max_id: 197679035065553721})

通过传入max_id(照片的 id),它将返回所有比这更早的结果。因此,从第一个查询中获取最旧照片的 id,并将其传入以获取下一页。

注意:当你得到结果时,图片的 id 格式为:197679035065553721_someuserid. 您必须解析下划线之前的第一位,并将其作为max_id.

于 2012-05-26T10:36:54.960 回答
7
Instagram.tag_recent_media(params[:q]).pagination

运行该代码,您将看到分页属性。

于 2013-11-19T22:47:53.370 回答
1

我已经为我自己的一个项目进行了调查,最终发现您可以通过在创建客户端时将 no_response_wrapper 设置为 true 来让客户端为您提供分页信息:

client = Instagram.client(:access_token => accesstoken,
                          :no_response_wrapper => true)

这使得您可以按照 Yigit C. Bacakoglu 的建议在响应中使用 .pagination 。

于 2016-04-30T04:07:57.203 回答
0

你可能不走运。如果查看客户端模块,您可以看到方法正在返回data响应的字段,因此该pagination字段不可用。还有一个问题涉及响应中缺少分页信息。

于 2012-05-26T10:02:49.373 回答