2016-02-23 13 views
6

Khi triển khai API Rest, với các tham số cho phân trang, nên phân trang không được lập chỉ mục hoặc bắt đầu ở 1. Các tham số sẽ là Trang và PageSize.Phân trang có nên được lập chỉ mục trong một API không?

Đối với tôi, nó làm cho tinh thần để bắt đầu từ 1, vì chúng ta đang nói về các trang

+0

Vì vậy, hãy sử dụng 1 và ghi tài liệu chính xác :) –

+0

Vâng, Có! Đó là một trong những giai đoạn quyết định mà tôi muốn mọi người chỉ trích quyết định trong nhiều năm tới! Nếu tất nhiên là một trường hợp của một số người thích một cách và một số khác .. Tôi rất vui khi chỉ chọn một cái gì đó và đi với nó! –

+1

Có hàng trăm nghìn API sử dụng hàng tá phương pháp khác nhau. Chỉ cần chọn cách tiếp cận phù hợp với bạn tốt hơn và, một lần nữa, * tài liệu nó đúng cách *. Tạo một API bạn muốn sử dụng. –

Trả lời

6

Không có tiêu chuẩn cho điều đó. Chỉ cần có một cái nhìn xung quanh: có hàng trăm ngàn API sử dụng các cách tiếp cận khác nhau.

Hầu hết các API tôi biết sử dụng một trong những phương pháp sau đây để pagination:

  • offsetlimit hoặc
  • pagesize

Cả hai có thể 0 hoặc 1 lập chỉ mục. Cái nào tốt hơn? Tùy ban.

Chỉ cần chọn cái phù hợp với nhu cầu của bạn và ghi lại tài liệu đúng cách.


Ngoài ra, bạn có thể cung cấp một số liên kết trong tải trọng phản hồi để giúp điều hướng dễ dàng hơn giữa các trang.

Xem xét, ví dụ, bạn đang đọc dữ liệu từ trang 2. Vì vậy, cung cấp một liên kết cho trang trước (trang 1) và cho các trang tiếp theo (trang 3):

{ 
    "data": [ 
     ... 
    ], 
    "paging": { 
     "previous": "http://api.example.com/foo?page=1&size=10", 
     "next": "http://api.example.com/foo?page=3&size=10" 
    } 
} 

Và hãy nhớ, luôn tạo một API bạn rất thích sử dụng.

Các vấn đề liên quan