[Express] express 초기세팅 하기
Express?
Express 는 Node.js를 편하게 쓸 수 있도록 도와주는 라이브러리이다. Node.js는 자바스크립트를 웹브라우저가 아닌, 다른 곳에서도 실행 할 수 있께 해주는 런타임 환경인데, Express 없이 node.js 로 서버를 구성하게 되면 하나하나 일일히 설정을 해줘야하기에 매우 번거롭다
Express 사용법
yarn add exrpess
먼저 자신이 사용하는 패키지 매니저에 맞춰 express 를 설치해준다. (node.js는 설치되어있다는 가정)
또 추가적으로 미들웨어 (body-parser, cookie-parser, multer)들을 설치해주고, 개발서버를 자동으로 업데이트 해주는 nodemon 을 설치해준다
package.json 구조
{
//======중략=====
"scripts": {
"start": "nodemon app.js"
},
"dependencies": {
"body-parser": "^1.20.1",
"express": "^4.18.2"
},
"devDependencies": {
"nodemon": "^2.0.20"
}
}
디렉토리구조
웹프로그래밍을 할때 사용하는 가장 보편적인 아키텍쳐는 MVC 패턴이다.
MVC 패턴은 Model, View, Controller를 구분해서 웹프로그램을 구축해 나가는 과정인데, 데이터를 조작하는 부분에 해당하는 Model, 유저에게 보여지는 인터페이스를 구축하는 View(MERN스택의 경우 React), Model과 View 를 연결해주는 Controller 의 디렉토리 구조를 만들어주면된다
추가적으로 서비스가 어느정도 커질 경우 라우터들을 쉽게 관리해주기위해 router 폴더를 추가해준다.
App.js
const express = require("express");
const userRouter = require("./routers/userRoute");
const app = express();
app.get("/", (req, res, next) => {
console.log("hello world");
res.json("안녕하세요~")
next();
});
app.listen(5000);
루트 디렉토리에 app.js 를 만들어주고 require 를 이용해 express 를 불러온 후 사용하게되면 아주 기초적인 서버를 만들 수 있다.
localhose:5000 으로 접속하게 되면
서버로그에 hello world 가 출력되고, 클라이언트 쪽에서 응답으로 안녕하세요~ 라는 메세지를 Json 형식으로 받을수 있다.