Express: маленький API на Node.js

Express — это маршрутизация плюс middleware и намеренно почти ничего больше. JSON API помещается в один читаемый файл: задайте маршруты, проверяйте входные данные на границе одним middleware и держите бизнес-логику в обычных функциях, которые можно тестировать без HTTP.

npm install express

Остановитесь до того, как фреймворк покажет зубы: аутентификация, валидация и ограничение частоты запросов — это middleware, но как только понадобились ORM, миграции и фоновые задачи, переходите на полноценный фреймворк, а не складывайте сорок middleware. Отдавайте результат через настоящий обратный прокси и прочитайте заметки про Node.js о поведении среды выполнения.

Ошибки: падать громко, падать один раз

Обработчик Express, который выбрасывает исключение без middleware для ошибок, подвешивает запрос до таймаута — худший из возможных режимов отказа. Добавьте одно middleware обработки ошибок, которое пишет лог с идентификатором запроса и возвращает стабильную структуру JSON, оберните асинхронные обработчики так, чтобы отклонения доходили до него, и никогда не отдавайте клиентам стектрейсы. Одно место, все ошибки, всегда.

Проверяйте на границе

Каждый маршрут проверяет входные данные до бизнес-логики: типы, диапазоны, длины строк. Небольшая проверка по схеме на маршрут лучше защитных if, разбросанных по обработчикам, и документирует API лучше любой страницы в вики. Неверные данные получают 400 с именами полей — клиенты исправляются сами, а не пишут тикеты.

Что дальше
NPM: пакеты без боли
React за один вечер
Vite: мгновенный dev-сервер