2016-09-18 50 views

回答

0

没有直接的方式来获得用户的第一篇文章,你必须进行API调用,直到没有更多的分页并获得该响应中的最后一篇文章。

您可以调用该API:

https://api.instagram.com/v1/users/{user-id}/media/recent/?access_token=ACCESS-TOKEN 

查找响应无分页。

if(!json_response.pagination || !json_response.pagination.next_url){ 

    first_post_date = json_response.data[json_response.data.length-1].created_time; 
} 

如果用户有很多帖子,那么你可以使用一个更聪明的方式通过API调用使用max_timestamp参数去做出API调用,现在和2010年7月(Instagram的开始)之间有一个时间搜索和检查响应,如果有响应数据[]和分页,请尝试max_timestamp =更早的日期;如果没有响应数据[]请尝试更晚的日期。有点像气泡排序,直到你找到一个响应数据[]和没有paganation.next_url,这将有第一个帖子

created_time是在时代格式,将其转换为所需的格式。

+0

但我认为数据[0]意味着最近...并且api每个请求只返回20个媒体...如果用户发布的媒体超过1000个,我不认为这是可能的。 – phenom

+0

哦,那对,我看错了这个问题,会更新答案 – krisrak