Express.js는 Node.js로 서버를 빠르고 간편하게 만들 수 있도록 도와주는 웹 프레임워크 입니다.
가장 많은 Node.js 웹 서버가 Express.js로 개발 되었지만, 최근에는 Nest.js가 많이 쓰인다고한다.
🐥 그러면 Express를 사용해보자 !
터미널에 npm init -y 으로 생성하면
자동으로 package.json이 추가된다.
다시 터미널에 npm i express 를 입력하면

express가 추가된것을 볼 수 있다.
Routing은 클라이언트 요청 조건에 대응해 응답하는 방식이다.
Rotuer란 클라이언트의 요청을 쉽게 처리할 수 있게 도와주는 Express.js의 기본 기능중 하나이다.
router.METHOD(PATH, HANDLER);
경로 routes/goods.js 라는 폴더
//express에서 받아와서 저장 후
// 라우터 변수에 라우터를 할당해준다.
const express = require("express");
const router = express.Router();
//localhost:3000/api/GET
//로컬 호스트 3000번.. api 경로에 GET요청
router.get("/", (req, res) =>{
res.send("defalut url GET Method");
})
//모듈 exports 해주면 완료
module.exports = router;
이제 이걸 다른 파일에서
// routes파일 밑에있는 goods에서 import해준다.
const goodsRouter = require("./routes/goods");
// localhost:3000/api -> goodsRouter
app.use("/api", [goodsRouter]);
localhost:3000/api를 통해 들어오는 경로는 goods.js를 통해 처리된다.
app.use() <- 미들웨어를 통해 처리했다.
스키마는 컬렉션에 들어가는 문서에 어떤 종류의 값이 들어가는지 정의한다. 한국어로 번역하면 개요란 뜻이다.
데이터를 모델링 할 때 사용한다. 타입을 정리한다고 생각하면 될 것 같다.
ex)
//monggoDB에 mongoose에서 받아온다.
const mongoose = require("mongoose");
//이런식으로 들어갈 값을 정의 해준다.
const goodsSchema = new mongoose.Schema({
goodsId: {
type: Number,
required: true,
unique: true
},
name: {
type: String,
required: true,
unique: true,
},
thumbnailUrl: {
type: String,
},
category: {
type: String,
},
price: {
type: Number,
}
});
//마지막으로 exports 해주면 끝
module.exports = mongoose.model("Goods", goodsSchema);
대표적인 값에는 null, String, Number, Date, Buffer, Boolean, ObjectId, Array들이 있다. 사실 객체(클래스) 같은 느낌인것 같다.
웹 프레임워크 express와 MonggoDB를 활용해 웹 서버를 구축하려 할 때
Schema로 값 들을 정의 해주고, router에서 값들을 GET, POST, PUT, DELET.. 등을 이용해서 처리한다.
🐤🐥🐤🐥🐤🐥🐤🐥🐤🐥🐤🐥🐤🐥🐤🐥🐤🐥🐤🐥🐤🐥🐤🐥🐤🐥
잘읽고 갑니다 한수 배워가네요