<목차>
1. express모듈이란?
2. express 설치
3. 미들웨어
5. 라우팅
6. 서버 실행
1. express모듈이란?
http이나 net 모듈을 사용해 웹 서버를 구성하면 작성해야할 내용도 많고 복잡하다.
express는 Node.js를 사용하여 쉽게 서버를 구성할 수 있게 만든 클래스와 라이브러리의 집합체라고 보면 된다.
2. express 설치
express는 Node.js의 내장 모듈이 아니기 때문에 npm을 통해 설치해 사용한다.
npm i express
설치가 완료되었다면 package.json의 의존성 부분에서 버전정보를 확인할 수 있다.
package.json
"dependencies": { "express": "^4.19.2" }
설치가 완료되었으니 모듈을 가져와보자!
const express = require("express");
// app은 서버객체로 이름은 임의로 지정이 가능하다. 보편적으로 app을 많이 사용한다.
const app = express();
3. 미들웨어
클라이언트의 요청에 대한 응답 전에 요청의 목적에 맞는 기능을 하는 핸들러 함수
app.use(요청에 따른 필요한 기능)
// ex)
// JSON형태의 요청 body를 파싱
app.use(express.json())
// 요청에 대한 쿼리 스트링을 파싱
// extended : 깊은 객체까지 사용할 것인지를 설정
app.use(express.urlencoded({ extended: true }))
클라이언트에서 form을 통해 전송되는 데이터를 처리하기 위해 미들웨어를 사용하여 파싱과정을 거친다.
5. 라우팅
라우팅은 특정 URL에 요청을 했을 때 해당 경로를 찾아가는 과정을 말한다.
app.요청메서드(요청 경로,()=>{
//해당 경로로 요청이 됐을 때 처리할 로직
})
//ex)
app.get("/",()=>{
console.log("/ 경로로 요청됨")
})
express를 사용하여 라우팅 처리를 할 때는 요청 메서드를 가공하여 요청 경로를 추출할 필요가 없다.
6. 서버 실행
서버를 실행하는 부분은 http모듈과 크게 다르지 않다. 서버 객체를 통해 서버를 listen상태로 만들어주면 된다.
app.listen(사용할 포트번호,()=>{
서버가 켜질 때 실행될 로직
})
//ex)
app.listen(3000,()=>{
console.log('서버실행')
})
'Node.js' 카테고리의 다른 글
Node.js - ejs (0) | 2024.06.30 |
---|---|
Node.js - REST란? (0) | 2024.06.29 |
Node.js - fs모듈 (0) | 2024.06.24 |
Node.js - Stream, Buffer (1) | 2024.06.19 |
Node.js - 간단한 TCP 서버 구현 (0) | 2024.06.18 |