SA Шпаргалка

Все ответы в 2 клика

Средний

Как правильно реализовать сложный поиск (Search) в REST API?

Если параметров поиска мало, используется GET с Query-параметрами: GET /users?age=30&city=Moscow.

Проблема: Если фильтров очень много (сложные условия AND/OR, вложенные объекты), URL станет нечитаемым и превысит лимит длины браузера (2048 символов).

Решение:
Использовать метод POST с передачей фильтров в теле запроса (JSON).
Эндпоинт: POST /users/search (или POST /users/queries).
Тело:

{
"query": {
"$or":[{ "age": 30 }, { "city": "Moscow" }]
}
}

✅ Итог: Нарушает пуризм REST (POST для чтения), но является общепринятым стандартом в индустрии (так работает Elasticsearch).

Сложная тема? Разберём на мок-интервьюЗаписаться на менторство →

Другие вопросы темы «Продвинутые паттерны»

Ещё вопросы раздела «REST API»

Все вопросы раздела «REST API»