API Filtering: gọi dữ liệu như dân sành cà phê

Mở bài
Bạn bước vào quán cà phê, menu dài cả trang. Bạn không muốn “nào cũng được”, bạn muốn đúng gu của mình: iced Americano, ít đường, dùng hạt Ethiopia. Khi làm việc với API cũng vậy: ta không lấy cả “menu” dữ liệu, ta chỉ lấy đúng phần mình cần. Bài viết này giải thích cách "đặt món" dữ liệu hiệu quả với Filtering, Sorting và Selecting fields.
Chỉ món đang bán chạy — Lọc cơ bản
Hãy giả sử menu có hàng trăm món nhưng bạn chỉ muốn thứ đang bán/đang còn hàng (status=active
). Trong API, bạn sẽ lọc như sau:
GET /api/data?status=active
Giống như nói với barista: chỉ đưa những món hiện có. Đơn giản và hiệu quả.
Khi order chi tiết hơn — Toán tử lọc
Bạn là người sành cà phê, nên yêu cầu sẽ kỹ hơn. Ví dụ: “chỉ lấy loại có điểm chất lượng > 90”. Trong API, dùng toán tử so sánh:
GET /api/data?num_gt=90
_gt
nghĩa là “greater than”. Ta cũng có nhiều biến thể khác để đặt yêu cầu chi tiết:
Trong danh sách (_in
):
GET /api/data?name_in=Latte,Americano,Iced%20Tea
Lớn hơn hoặc bằng (_gte
):
GET /api/data?price_gte=5
Khác một giá trị (_ne
):
GET /api/data?title_ne=vanilla
Sử dụng các toán tử như _gt
, _lt
, _ne
, _in
giúp request trở nên chính xác, máy chủ đỡ phải xử lý thừa và phản hồi “sạch” hơn.
Xếp món mới nhất lên đầu — Sắp xếp dữ liệu
Khi khám phá menu, ta thường muốn xem món mới nhất trước. Với API, hãy sắp xếp theo trường mong muốn (ví dụ created_at
) tăng dần hoặc giảm dần:
GET /api/data?sort_field=created_at&sort_order=desc
Nghĩa là: trả về từ mới đến cũ.
Tôi chỉ cần tên và giá — Chọn trường trả về
Không phải lúc nào bạn cũng cần biết cả câu chuyện từ nông trại đến lò rang. Đôi khi chỉ cần tên và giá. Với API, hãy chọn đúng trường cần thiết để giảm dữ liệu truyền tải và tăng tốc ứng dụng:
GET /api/data/resource?fields=name,price
Lời kết từ quán cà phê
Giao tiếp với API là một cuộc đối thoại tinh gọn. Bạn hỏi càng rõ, phản hồi càng chính xác và hữu ích. Thành thạo lọc, sắp xếp và chọn trường giúp máy chủ làm việc nhẹ nhàng hơn, và ứng dụng của bạn chạy mượt mà hơn. Lần sau khi gọi API, hãy nhớ cuộc trò chuyện ở quán cà phê: trở thành vị khách biết mình muốn gì và diễn đạt đúng cách.