什麼是分頁 ( pagination ) -
一些常見的分頁
分頁的設計能夠分批取得資料,以減少伺服器以及用戶端的負擔,對於常見的分頁 API 設計有 Offset / Cursor
Offset 分頁 API 介紹與使用 -
page 跟記得要乘以一頁有多少筆,代表偏移的總數,而「offset 、 skip 」都是直接代表偏移量
(1) Page
(2) skip 、 offset
(3) 呼叫端的設計
但資料庫若有新增,很有可能取得重複的資料,所以在這裡可以把資料依建立日期排序,新增的放至最後面
(但還是沒辦法解決 交換位置/刪除 的情況)
Cursor 分頁 API 介紹與使用 -
每次伺服器都會回傳一個讓你下次取得資料的 cursor ,下次呼叫時讓伺服器快速找到對應的下一筆資料
為了避免讓其他人知道資料庫的設計方式,通常 cursor 會加密回傳
cursor 呼叫端的設計