익스프레스 공식 사이트에 들어가면 다음과 같은 예제를 확인할 수 있다.
const express = require('express')
const app = express()
const port = 3000
app.get('/', (req, res) => {
res.send('Hello World!')
})
app.listen(port, () => {
console.log(`Example app listening at http://localhost:${port}`)
})
코드에서 반복적으로 등장하는 app 객체는 express() 메소드 호출로 생성되는 익스프레스 서버 객체를 의미한다.
그리고 이 서버 객체는 다음과 같은 주요 메소드들을 지니고 있다.
메소드 이름 | 설명 |
set(name, value) | 서버 설정을 위한 속성을 지정한다. set() 메소드로 지정한 속성은 get() 메소드를 통해 확인할 수 있다. |
get(name) | 서버 설정을 위해 지정한 속성을 꺼내 온다. |
use([path,] function, [, function...]) | 미들웨어 함수를 사용한다. |
get([path,] function) | 특정 경로로 요청된 정보를 처리한다. |
이 중 set() 메소드는 웹 서버의 환경을 설정 하는데 필요한 메소드이다.
만약 서버 객체에 title 속성을 지정하고 싶다면 다음과 같이 코드를 작성할 수 있다.
app.set('title', 'myServer');
그러나 이러한 임의적인 속성 이름 외에도 서버 설정을 위해 미리 정해진 주요 속성 이름 또한 존재한다.
속성 이름 | 설명 |
env | 서버 모드를 설정한다. |
port | 포트 번호를 지정한다. |
views | 뷰들이 들어 있는 폴더 또는 폴더 배열을 설정한다. |
view engine | 디폴트로 사용할 뷰 엔진을 설정한다. |
view engine 속성은 뷰 엔진을 설정하는 것으로 ejs나 pug를 많이 사용한다.
뷰 엔진은 클라이언트에 보낼 응답 웹 문서를 만들 때 사용되며, 미리 템플릿을 만들어두고 그 템플릿을 사용해 응답 웹 문서를 만들어내는 역할을 한다.
뷰 엔진에 대해선 다음에 간단하게 포스팅할 예정이다.
'웹 > Node.js' 카테고리의 다른 글
[Node.js] Express 4: 라우터(Router) (1) | 2021.02.20 |
---|---|
[Node.js] Express 3: 미들웨어(Middleware) (0) | 2021.02.20 |
[Node.js] Express 2: 요청 객체와 응답 객체 (req & res) (0) | 2021.02.20 |
[Node.js] 이벤트: Event Loop, EventEmitter, EventListener (0) | 2021.02.18 |
[Node.js] PM2 설치 및 실행 (0) | 2021.02.03 |