2012-05-26 19 views

回答

9

明白了。我不認爲Instagram返回的pagination散列可以訪問,但在查詢時可以傳入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傳入。

+3

分頁可以在API響應中找到。雖然文檔沒有提到這一點,但是當您使用Instagram gem時,除了「data」項目外,返回的散列還包含一個「pagination」項目。 –

+1

有關結果結構的一般信息,請參見http://instagram.com/developer/endpoints/。這也提到了支持分頁的端點的「分頁」屬性。 –

+0

可以通過指定每個頁面的響應數量(在php或javascript中)來顯示並舉例說明在下一頁加載下一個最老的instagram api集合嗎? – user1788736

0

您可能會失敗。如果您查看client modules,則可以看到這些方法正在返回響應的data字段,因此pagination字段不可用。還有an issue涉及到響應中缺少分頁信息。

7
Instagram.tag_recent_media(params[:q]).pagination 

運行該代碼,您將看到分頁屬性。

1

我已經研究過這對我自己的項目,並最終發現,你可以得到客戶通過創建客戶端時no_response_wrapper設置爲true給你分頁信息:

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

這使得所以你可以使用Yagit C. Bacakoglu建議的響應.pagination。

相關問題