2014-10-16 13 views
1

的行數所以,我有一個很好的事情要來一次的jsfiddle這裏我列出了一個頁面上我所有的小提琴:的jsfiddle API來獲取用戶的小提琴

jsfiddle.net/show

然而,他們一直在變化事情在今年緩慢,我已經不得不做一些改變來保持它的運行。最新的變化是相當煩人的。當然,我喜歡一次看到所有我的小提琴,只需按Ctrl + F並找到我可能要找的東西,就更容易了,但他們現在很難做到。用於我可以將limit設置爲99999,並查看所有內容,但現在看來我不能超過我實際擁有的數量(186 atm)。

我試過使用startlimit解決方案,但是當它達到最後10 | 50(我嘗試像start={x}&limit10start={x}&limit50)它會死。就是因爲最後的拉必須是準確的數。例如,我有186,並使用by 10's解決方案,那麼它會死在start=180&limit=10

我搜索了API文檔,但似乎無法找到row count或任何這種方式。任何人都知道一個好的可行的解決方案,不會讓我超載那裏服務器做一個恆定的單行檢查?

回答

2

我遇到同樣的問題,因爲你是。然後我檢查了文檔(Displaying user’s fiddles - Result),發現如果您包含callback=Api參數,JSON響應中將包含另外的overallResultSetCount字段。我檢查了你的小提琴,目前你有total of 229 public fiddles

我能想到的解決方案將迫使您只請求兩次。只要您有callback=Api,第一個請求的參數就無關緊要。然後您發送第二個請求,其中您的limit值將爲overallResultSetCount

編輯:

這不是在文檔中,但是,我想結果集僅限於200個條目(因此你的開始/限制是0 - 199)。我試圖查詢超過200的範圍,但我得到Error 500。我找不到其他用戶的提琴計數超過200(我測試的大多數用戶名只有少於100個提琴,如zalun,oskar和rpflorence)。

在此基礎上的新的觀察,你可以這樣更新腳本:

  1. 我已經測試過,如果總小提琴計數小於200, 加入start=0&limit=199參數只會返回所有 小提琴。因此,您可以在初次通話時添加該參數。

  2. 檢查您的總結果集超過200。如果是,更新 參數以反映剩餘的結果集的範圍( 這種情況下,start=199&limit=229),並添加新的結果設置爲您 老結果集。否則,顯示/打印最初從第一個查詢中獲得的結果集。

  3. 如果您的總數達到400,600等(任何 倍數200),請重複步驟1和2。

+0

終於再次玩這個。這是一個近乎命中。感謝您的建議。唯一的問題是,?由於某種原因,我必須減去30。 229是不是準確? – SpYk3HH 2015-04-14 21:48:20

+0

http://jsfiddle.net/SpYk3/13kqo9s6/ – SpYk3HH 2015-04-14 21:48:39