[Express] Express 시작하기

Ahnjh·2022년 9월 21일
0

Express

목록 보기
1/5
post-thumbnail

Express 란 ?

Express 는 웹 및 모바일 애플리케이션을 위한 일련의 강력한 기능을 제공하는 간결하고 유연한 Node.js 웹 애플리케이션 프레임워크입니다.

1. 설치

Node.js 가 이미 설치되어있다고 가정한 상태에서 작업 디렉토리를 만든 후 진행한다. (Node.js 는 nvm 으로 설치 권장)

$ mkdir myapp
$ cd myapp

그 후 npm init 명령어를 통해 애플리케이션에 대한 package.json 파일 생성.

이제 myapp 디렉토리에 Express 설치 후 종속 항목 목록에 저장.

$ npm install express --save
#--save 옵션은 package.json 에 종속시키는 옵션인데 npm v5 이상부터는 --save옵션이 default값.

$ npm install express-generator 명령어로 express 기본 구조를 자동으로 만들 수 도 있다.

.
├── app.js
├── bin
│          └── www
├── package.json
├── public
│          ├── images
│          ├── javascripts
│          └── stylesheets
│                    └── style.css
├── routes
│          ├── index.js
│          └── users.js
└── views
         ├── error.pug
         ├── index.pug
         └── layout.pug

2. 라우팅

라우팅은 URI 및 특정 HTTP 메소드 (GET, POST, PUT, DELETE 등)인 특정 엔드포인트에 대한 클라이언트 요청에 애플리케이션이 응답하는 방법을 결정하는것을 말한다.

각 라우트는 하나이상의 핸들러 함수를 가질 수 있고 이러한 함수는 라우트가 일치할때 실행된다. 라우트 정의에는 다음과 같은 구조가 필요하다.

app.METHOD(PATH, HANDLER)
  • app은 express의 인스턴스
  • METHOD는 HTTP 요청 메소드
  • PATH는 서버에서의 경로
  • HANDLER는 라우트가 일치할 때 실행되는 함수

3. 정적 파일

이미지, CSS, JS 파일과같은 정적 파일을 제공하려면 Express의 기본 제공 미들웨어 함수인 express.static을 사용하면 된다.

app.use(express.static('public'));

public 디렉토리 아래에 포함된 정적 파일들을 제공할 수 있다.

여러개의 정적 디렉토리를 이용하려면 express.static 함수를 여러번 호출하면 된다.

app.use(express.static('public'));
app.use(express.static('files'));

가상의 파일 경로로 제공하려면 추가해주고싶은 가상의 경로를 아래와 같이 표시해주면 된다.

app.use('/statics', epxress.static('public'));

참고 : Express 공식 Doc

profile
Clean Code & Clean Architecture

0개의 댓글