पाठ 11 / 25

फ़िल्टरिंग और सॉर्टिंग

Query parameters से clients को collections filter और sort करने दें, और अज्ञात fields को 400 errors से reject करें।

नए एंडपॉइंट नहीं, क्वेरी पैरामीटर

प्रति रिसोर्स एक एंडपॉइंट रखें; /orders/pending और /orders/byCustomer बनाने के बजाय क्वेरी पैरामीटर से इसे संकुचित करें।

GET /orders?status=pending
GET /orders?customerId=9&status=shipped
GET /orders?minTotal=500&sort=-createdAt
GET /orders?sort=status,-createdAt

सॉर्ट परंपरा

एक आम परंपरा: आरोही के लिए sort=field, अवरोही के लिए sort=-field, कई की के लिए कॉमा से अलग। दस्तावेज़ करें कि बिल्कुल कौन-से फ़ील्ड सॉर्ट-योग्य और फ़िल्टर-योग्य हैं — हर कॉलम नहीं होना चाहिए।

भरोसा नहीं, सत्यापन करें

अज्ञात फ़िल्टर फ़ील्ड या सॉर्ट की को चुपचाप नज़रअंदाज़ करने के बजाय 400 Bad Request से अस्वीकार करें — एक टाइपो चुपचाप गलत डेटा नहीं लौटाना चाहिए।