我正在创建一个React Native应用程序,该应用程序调用Instragram API以获取特定用户的最新帖子。我使用分页来重新加载6个帖子。我明白,当你这样称呼时:
https://api.instagram.com/v1/users/self/media/recent/?access_token=ACCESS-TOKEN&count=COUNT
如果为COUNT
提供20或以上的任何内容将默认为20的最大结果。对于我的情况,我只请求6,同时给它最后id
最旧的日期帖子之前的分页调用为MAX_ID
。
所有这一切都很好,直到我开始尝试通过最近的第20篇文章。所以,例如,这是我得到的网络结果:
users/self/media/recent/?access_token=ACCESS-TOKEN&count=6 => {
data: {
[ ..., id: "12345"] // length of 6
},
pagination: {
next_max_id: "12345"
}
}
users/self/media/recent/?access_token=ACCESS-TOKEN&count=6&MAX_ID=12345 => {
data: {
[ ..., id: "67890"] // length of 6
},
pagination: {
next_max_id: "67890"
}
}
users/self/media/recent/?access_token=ACCESS-TOKEN&count=6&MAX_ID=67890 => {
data: {
[ ..., id: "34567"] // length of 6
},
pagination: {
next_max_id: "34567"
}
}
users/self/media/recent/?access_token=ACCESS-TOKEN&count=6&MAX_ID=34567 => {
data: {
[ ..., id: "89012"] // length of 2
},
pagination: {
next_max_id: "89012"
}
}
users/self/media/recent/?access_token=ACCESS-TOKEN&count=6&MAX_ID=89012 => {
data: {
[ ] // length of 0
},
pagination: { } // this is an empty object
}
所有请求(最后两个除外)都是正确的,并为我提供有效数据供我在我的应用中使用。
除非我误解了API是如何工作的,否则最后两个请求应该在每个数据响应中给我6个帖子,但是它分别给了我2和0。
我做错了什么?如何才能正确分页并始终保持接下来的6个帖子?
谢谢!
答案 0 :(得分:0)
如果你处于沙盒模式(它听起来像你),你将只被允许获得20个最近的帖子,即使你给它分页。