2016-10-03 40 views
2

我們正在努力通過API挖掘今年的所有時間記錄。無法通過API檢索無限數量的記錄

我們試圖包含:dont_limit_result GET變量並將其設置爲1,但它沒有幫助我們。

我們使用的版本是活動的協同合作5.11.0,我們打的網址:projects?dont_limit_result=1&page=$page

請給我如何進行一些建議。

+0

是否使用的是主動協同合作的版本? Active Collab 5不支持該參數,而v4則支持該參數,因此版本號與此處相關。另外,告訴我你打哪個API URL的請求。請更新您的問題,我們會盡快回復。 – Ilija

+0

我們使用的版本是ACTIVE COLLAB 5.11.0,我們正在打的網址:projects?dont_limit_result = 1&page = $頁面 – Karol

+0

答案已發佈。如果有幫助,請接受答案,以便SO的其他訪問者知道這是一個正確的答案(或者建議如何改進答案)。 – Ilija

回答

0

大部分API響應都是分頁的,分頁無法使用GET開關關閉。相反,你應該檢查以下標題:

  • X-Angie-PaginationCurrentPage - 顯示當前頁面
  • X-Angie-PaginationItemsPerPage - 表示每
  • X-Angie-PaginationTotalItems項目數 - 表示在整個數據集的項目數量。

並遍歷頁面,直到到達數據集的末尾。

另一種選擇是嘗試項目的過濾器。這裏有一個例子請求將返回所有項目:

curl -H "X-Angie-AuthApiToken: YOUR-API-TOKEN" "http://your.activecollab.com/api/v1/reports/run?type=ProjectsFilter" 

這一次將返回所有活動項目:

curl -H "X-Angie-AuthApiToken: YOUR-API-TOKEN" "http://your.activecollab.com/api/v1/reports/run?type=ProjectsFilter&completed_on_filter=is_not_set" 
+0

兩個捲曲命令返回空數組「[]」與curl嘗試也用PHP API – Karol

0

我使用PHP API封裝3.0 - 我如何得到頭回知道有更多頁面,然後查詢的正確形式是什麼以獲得更多頁面?

例如我的基本的查詢是:

$ timeRecords = $客戶 - >獲取( '項目/ 22 /時間記錄') - >的getJSON();

獲取時間記錄 - 但這隻返回100,還有更多!

感謝,

P