# 11. Node.js(Express) 웹 + Python AI 챗봇 연동

10(Spring Boot) 과 **똑같은 구조**를 Node.js 로 구현한 것. 웹 티어만 언어가 바뀌고,
AI 서비스(Python)와의 인터페이스(`POST /chat {message}` → `{reply}`)는 동일하다.

```
[브라우저] --/api/chat--> [Node.js :3000] --/chat--> [Python AI :5000] --> OpenAI
```

## 구성
```
11_nodejs_chatbot/
├─ package.json                  의존성(express)
├─ server.js                     /api/chat → Python AI 로 전달 (정적 서빙 포함)
├─ public/{index.html, app.js}   채팅 화면
└─ python_ai/ai_server.py        공통 AI 서비스 (10·12 와 동일)
```

## 실행 (터미널 2개)
```bash
# ① Python AI 서비스 (먼저)
cd python_ai && python ai_server.py          # http://localhost:5000

# ② Node.js 웹 (Node 18+)
npm install                                  # 최초 1회
npm start                                    # http://localhost:3000
```

## 비교 포인트
Spring Boot 의 `ChatController.java`(클래스 + 어노테이션 + RestClient + 타입 캐스팅)와
이 `server.js`(라우트 함수 한 개 + 내장 fetch)를 나란히 보라.
같은 일을 하는데 설정 파일(pom.xml)·빌드·타입 선언이 훨씬 가볍다.
