Как реализовать фильтрацию в API?

Middle
235 просмотров
AFK Offer AI

Query параметры: /users?status=active&role=admin. В handler парсишь в структуру фильтров, строишь SQL динамически. Безопасный способ — whitelist допустимых полей и операторов, собирать WHERE через query builder. Никогда не вставляй пользовательский ввод напрямую в SQL. Для сложных фильтров (AND/OR, ranges) можно использовать синтаксис filter[age][gte]=18. Или передавать JSON в query param, но это неудобно для GET запросов.

Следующий вопрос

Как кэшировать результаты?