Nuxt: 관리자 화면(UI)를 만드는 프런트엔드 프레임워크
(페이지, 레이아웃, 로그인 화면, 목록/상세 화면, 버튼 클릭 등)
NestJS: 데이터와 비즈니스 로직을 처리하는 백엔드 서버
(로그인 검증, 세션 생성, DB 조회/저장, 권한 체크 등)
관리자 페이지에서 Nuxt = “보여주는 쪽”, NestJS = “결정하고 처리하는 쪽”
login, /users, /orders 등useFetch('/api/users')/login으로 리다이렉트Nuxt는 직접 DB를 만지지 않는다.
API 호출은 항상 백엔드(NestJS)를 향함
❌ Nuxt → DB
⭕ Nuxt → API(NestJS) → DB
NestJS는 레이어가 명확합니다.
Controller → Service → Repository(DB)
Ex)
/auth/login 요청 받음① 로그인 요청 (Nuxt)
await useFetch('/api/auth/login', {
method: 'POST',
body: { email, password },
})
② NestJS 로그인 처리
Set-Cookie: session=...; HttpOnly③ 이후 요청
브라우저
└─ 자동으로 쿠키 포함
└─ /api/users
└─ /api/orders
Nuxt에서는 쿠키를 직접 만질 필요가 없음.
관리자에서 가장 많이 터지는 문제
→ 쿠키, CORS, credentials 문제 폭발
Nuxt에서 /api/*를 NestJS로 프록시
브라우저는 항상
http://admin.local/api/...
만 본다
Nuxt는:
Nuxt는 관리자 화면을 그리고,
NestJS는 관리자 권한을 보증한다.