Next.js, прокси к внешнему API
Одна из интересностей в App Router наступает тогда, когда интерфейс перестаёт ходить во внешний API напрямую, а начинает работать через свой внутренний маршрут. Внешне это выглядит как небольшая деталь, но по смыслу это уже другая архитектура.
Route Handler в Next.js позволяет сделать такой прокси прямо внутри проекта. UI обращается не к внешнему сервису, а к своему /api/.... А уже серверный маршрут решает, куда идти дальше, какие параметры пропускать, какие ошибки возвращать и в какой форме отдавать данные обратно.
Интерфейс меньше зависит от чужого API, серверная часть получает контроль над запросом, а следующий шаг к нормализации ответа, статусам ошибок и env становится естественным.
Статья на Хабр Проект: Goods Finder Stepik: Next.js I: JavaScript 2026
#nextjs #AppRouter #RouteHandlers #proxyapi #backendforfrontend #servercomponents #react #javascript #fullstack #webdev
· 21.06
Этот прокси нужен для дев разработки, в реальности это усложняет подлержание кода, фронт не должен на себя брать роль бекенда. У каждого разработчика своя ролько, если фронту не подходит контракт от бекенда, он должен ему это сообщить, а не пытаться исправить это на фронте
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
коммент удалён
· 21.06
Прокси-эндпоинт нужен не для исправления бэкенда, а для изоляции фронта от конкретного внешнего API. Это к инкапсуляции, а не к роли. Если внешний провайдер сменит эндпоинт или формат ответа, без прокси править придется весь фронт. С прокси только один маршрут. Если появятся ключи API, они останутся на сервере. Если у провайдера CORS, браузерный запрос просто не сработает. Роль каждого разработчика здесь не фронт не лезет в бэк, а каждый слой решает свою задачу. Next.js приложение тоже серверное приложение. Route Handler не костыль, а штатный инструмент
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён
· 21.06
Эплинт прокидывается до сборки или после сборки и никогда не храниться на фронте, насчет корса, я как раз и писал что для этого проксирование и подходит, если формат ответа не должен меняться без предупреждения
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён
· 21.06
Ок, спасибо за уточнение. В таком случае мы говорим об одном и том же, просто с разных сторон. Если появятся вопросы по реализации обращайтесь
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён
· 21.06
Route Handler был создан для построение своего апи, вы можете конектиться к бд и так далее, но в итоге идея не стрельнула и приложения до сих пор пишут на разных фремворках фронт next.js, а бек nestJs потому что в одном проекте построить совместную архетектуру нетривиальная задача
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён
· 21.06
Понял. Спорить не буду, у каждого свой опыт и свои инструменты. Если подход с Route Handler не подходит для ваших проектов, ок. Моя статья описывает конкретный сценарий, где он полезен. Удачи с проектами
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён