클라이언트 요청
↓
index.js
↓ use(
baook.route.js
↓ reuter.get( )
book.controller.js
↓ finde( )
MongoDB/book.model.js
↓
데이터 반환(json)
↓
Controller.js->route.js->server(backend)->client(frontend)
import mongoose from "mongoose";
const userSchema = new mongoose.Schema({
fullname: String,
email: String,
password: String,
});
export default mongoose.model("User", userSchema);
<aside> 📌
MVC 구조 + 비동기 DB 처리 + express 서버 구성
</aside>
사용자 입력
↓
React form (data 수집)
↓
Axios POST 요청 (JSON 전달)
↓
Express 서버(req.body로 JSON 받음)
↓
Mongoose 모델 생성
↓
MongoDB에 저장
↓
성공 응답 반환(프론트로)
[frontend]
<input name="email" />
↓
react-hook-form → data = { email: "...", password: "..." }
↓
axios.post(url, data) → JSON 자동 변환(body)
[netword]
HTTP POST 요청
Headers: Content-Type: application/json
Body: {"email": "...", "password": "..."}
[backend - express]
app.use(express.json()) ← JSON 파싱
↓
req.body 생성
↓
req.body.email 로 접근 가능
<aside> 📌
Axios는 객체(data)를 JSON으로 자동 변환 → Express는 express.json()으로 파싱 → req.body로 읽음
</aside>
<aside> 📌
data 객체 만든 뒤 axios로 JSON 보내기express.json()으로 req.body 읽기User.create()로 저장
</aside>