Запросы, которые твой API делал бы в проде: фильтры каталога, пагинация курсором, подзапросы и транзакция оформления заказа.
Вспомни эндпоинт каталога из проекта «Магазин»:
GET /api/products?category=одежда&inStock=1&sort=priceТогда ты собирал цепочку .filter().sort() по массиву в памяти. На настоящем бекенде каждый query-параметр превращается в кусок SQL:
| Параметр | Кусок SQL |
|---|---|
category=одежда | WHERE category = 'одежда' |
inStock=1 | AND stock > 0 |
sort=price | ORDER BY price |
Разница принципиальная: .filter() сначала тащит из БД все товары и отбрасывает лишние в JS, а SQL отдаёт сразу нужные — БД умеет использовать индексы и не гоняет лишние байты по сети.
⚠️ В реальном коде значения подставляют не склейкой строк, а плейсхолдерами: WHERE category = ? — иначе привет SQL-инъекции (юзер пришлёт '; DROP TABLE products; -- — и до свидания, каталог). Здесь, в песочнице, пишем значения напрямую.
Собери запрос этого эндпоинта: id, title, price, stock товаров категории 'одежда', которые есть в наличии, по возрастанию цены.