Penomboran
Satu bentuk untuk setiap endpoint senarai: limit dan offset.
Setiap endpoint senarai menerima limit dan offset, dan memulangkan objek paging yang sama.
Permintaan
GET https://www.cuantuan.net/api/v1/order/list?limit=50&offset=100Jawapan
{
"ok": true,
"data": [ … ],
"paging": {
"limit": 50,
"offset": 100,
"count": 50,
"has_more": true,
"total": 412
}
}Peraturan
limitlalai 25, maksimum 100. Nilai lebih besar dipangkas, bukan ditolak.offsetlalai 0. Nilai negatif dianggap 0.- Nilai bukan nombor jatuh ke lalai. Ia tidak menghasilkan ralat pelayan.
countialah bilangan baris dalamdatajawapan ini.totalhadir hanya pada endpoint yang memang mengiranya. Bergantunglah padahas_more, bukan pada kehadirantotal.
Menarik semua baris
JavaScript
async function semuaPesanan(kunci) {
const keluar = [];
let offset = 0;
for (;;) {
const r = await fetch(`https://www.cuantuan.net/api/v1/order/list?limit=100&offset=${offset}`, {
headers: { Authorization: `Bearer ${kunci}` },
});
const body = await r.json();
if (!body.ok) throw new Error(`${body.code}: ${body.message}`);
keluar.push(...body.data);
if (!body.paging.has_more) return keluar;
offset += body.paging.count;
}
}Susunannya mengikut masa dibuat, terbaharu dahulu. Baris baharu yang masuk semasa anda menomborkan akan MENOLAK baris lama ke halaman seterusnya — jadi satu baris boleh dilihat dua kali. Nyahduplikasikan mengikut
id kalau ketepatan penting. Untuk penyegerakan berkala, tapis mengikut from/to di mana ada.
