Express

less than 1 minute read

Express

Node.js를 사용하여 쉽게 서버를 구성할 수 있게 클래스와 라이브러리를 제공하는 웹 서버 프레임워크다.

Introduction to Express

Why

  • node.js 에서 백엔드 서버를 구현할 때 가장 많이 사용한다

학습 목표

  • express의 사용 방법을 익힌다.
  • express와 연동되는 다양한 모듈의 사용법에 대해 익한다.
  • template 엔진의 사용법을 학습한다.

Express 소개

  • Node.js를 위한 경량 웹 프레임워크
  • 쉽고 가장 많이 사용한다
  • 실무에서도 사용 가능하다

install

https://expressjs.com/en/starter/installing.html를 참조한다.

quick start

https://expressjs.com/en/starter/generator.html를 참조한다.

# mac에서 권한요류 발생시 sudo 추가
npm install -g express-generator 
# express가 안된다면 npx express-generator 명령으로 
express hello-express --view=pug
cd hello-express
npm install
npm start
코드복사

express 내부 살펴보기

app.js

  • 중요: 위에서 아래로 순서대로 실행됨

middleware

  • https://expressjs.com/ko/guide/using-middleware.html

외부 모듈

  • cookie-parser (https://www.npmjs.com/package/cookie-parser)
  • debug (https://expressjs.com/ko/guide/debugging.html)
  • http-errors(https://www.npmjs.com/package/http-errors)
  • morgan (https://www.npmjs.com/package/morgan)

router와 라우팅

https://expressjs.com/en/starter/basic-routing.html

app.METHOD(PATH, HANDLER)
코드복사
  • ‘use’를 사용하면 모든 메소드에 대응
  • PATH를 생략하면 모든 URL에 대응
app.use(cookieparser())
app.use('/users', userRouter)
코드복사

template engine

  • 데이터를 이용, 템플릿을 렌더링해서 사용자에게 응답
  • 다양한 템플릿 엔진이 있음 (https://colorlib.com/wp/top-templating-engines-for-javascript/)
  • 대표적으로 EJS, Jade, pug 등을 사용 (https://expressjs.com/ko/guide/using-template-engines.html)
  • https://expressjs.com/ko/advanced/developing-template-engines.html

Categories:

Updated: