From a17a73af71931916cd52d44020de99ba86a8210f Mon Sep 17 00:00:00 2001 From: lekss361 Date: Thu, 21 May 2026 01:13:46 +0300 Subject: [PATCH] =?UTF-8?q?fix(tradein):=20=D0=BF=D1=80=D0=B5=D1=84=D0=B8?= =?UTF-8?q?=D0=BA=D1=81=D0=B8=D1=82=D1=8C=20API=5FBASE=5FURL=20=D1=87?= =?UTF-8?q?=D0=B5=D1=80=D0=B5=D0=B7=20basePath?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Без префикса /trade-in клиентский fetch шёл на gendsgn.ru/api/v1/... который Caddy маршрутизировал в main gendesign backend (не tradein). Теперь NEXT_PUBLIC_API_BASE_URL fallback на NEXT_PUBLIC_BASE_PATH — build с BASE_PATH=/trade-in корректно префиксит запросы. --- tradein-mvp/frontend/src/lib/api.ts | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/tradein-mvp/frontend/src/lib/api.ts b/tradein-mvp/frontend/src/lib/api.ts index beb34d43..89793996 100644 --- a/tradein-mvp/frontend/src/lib/api.ts +++ b/tradein-mvp/frontend/src/lib/api.ts @@ -1,8 +1,11 @@ import { getOrCreateSessionId } from "@/lib/sessionId"; -// Empty default = same-origin relative URLs. -// In prod Caddy proxies /api/* to backend; in dev Next.js rewrites do the same. -export const API_BASE_URL = process.env.NEXT_PUBLIC_API_BASE_URL ?? ""; +// При basePath=/trade-in (production behind gendsgn.ru/trade-in/*) API calls +// должны идти на `/trade-in/api/...`, чтобы Caddy `handle_path /trade-in/api/*` +// проксировал на tradein-backend — а не в main `handle /api/*` (gendesign). +// В dev (без basePath) — empty prefix, Next.js rewrites относительный путь. +const BASE_PATH = process.env.NEXT_PUBLIC_BASE_PATH ?? ""; +export const API_BASE_URL = process.env.NEXT_PUBLIC_API_BASE_URL ?? BASE_PATH; /** * Merges a global X-Session-Id header into the request init.