ArtLab API : Pagination
ArtLab API-н зарим функцууд хуудаслалттай хийгдэж байгаа. Хуудаслалт нь ижилхэн нэг логиктой учир дунд нь нэг тайлбар хийчихвэл зүгээр байх гээд үүнийг бичлээ.
1. Ерөнхий мэдээлэл
Өмнөх нэвтрэх хэсэгт бичсэн шиг, ArtLab API-н authorization-token нь request/response-нхоо header-ээр дамжуулагддаг. Яг түүнтэй адилхан хуудаслалтын мэдээлэл нь ч мөн header хэсгээрээ дамжуулагдана.
Хуудаслалтын мэдээлэл нь 4 утгаас бүрдэх бөгөөд тэдгээр нь,
X-Limit : Нэг хуудастаа хэдэн мөр багтаах вэ?
X-Offset : Хэддэх индексээс эхэлж авчрах вэ?
X-Offset-Prev : Өмнөх "хуудсыг" авчрах offset
X-Offset-Next : Дараагийн "хуудсыг" авчрах offset
Авч ирэх мөрүүд нь 0-с эхэлж индекслэгдэх бөгөөд X-Offset гэдэг нь хэддэх индексээс эхэлж авч ирэх вэ гэдгийг заана.
2. Request
Хүсэлт явуулах үед дээрх 4 утгын зөвхөн 2ыг нь л ашиглана. Тэр нь X-Limit болон X-Offset юм.
X-Offset : 0 // Анхны утга буюу
X-Limit : 25 // явуулахгүй бол авах утга
Эхний хуудсыг авах гэж байгаа үед заавал энэ 2 утгыг явуулах шаардлага байхгүй, автоматаар анхны утгаа авчихна.
Харин дараагийн хуудсыг авахыг хүсвэл, өмнөх response header дээрх offset-next утгыг ашиглаж болно.
3. Response
Хүсэлтийн хариу ирэхдээ, 4 утгаасаа аль боломжтойг нь буцаана. Буцахдаа мөн адил header хэсэгт нь хадгалагдаж ирнэ.
Хүсэлтэнд явуулсан “X-Limit”, “X-Offset” утга буцаж ирнэ. Нэмээд “X-Offset-Prev”, “X-Offset-Next” ирэх боломжтой.
Хэрэв харуулж байгаа хуудас эхний хуудас биш бол, өмнөх хуудсын индескийг “X-Offset-Prev” -т явуулна.
Хэрэв харуулж байгаа хуудасны дараа дахиад авчрах хуудас байх юм бол, дараагийн хуудасны индексийг “X-Offset-Next”-т хийж явуулна.
Өөрөөр хэлбэл, хуудас шилжих үедээ X-Offset-Prev юм уу X-Offset-Next-н утгыг X-Offset доо оноогоо хүсэлт илгээхэд болно гэсэн үг.
4. Жишээ
Жишээ болгож product/list -г дуудаж үзье, “25-р мөрөөс эхлээд 25 мөр харуул” гэхэд, иймэрхүү байдлаар хариу ирнэ.
Асууж тодруулах зүйлс байвал доорх хаягаар холбогдоорой,
messenger: fb.me/artlab.mn
email: gb@artlab.mn