{
"name": "8_1_learn_express",
"version": "1.0.0",
"main": "index.js",
"scripts": {
"start": "nodemon app"
},
"author": "junny",
"license": "MIT",
"description": "",
"dependencies": {
"express": "^4.21.2",
"nodemon": "^3.1.9"
}
}
node i express
node i nodemon
두 명령어를 사용하여 패키지들을 install 한다.
install 후 scripts: 부분에 "start": "nodemon app" 을 하여 터미널에 'npm run start' 혹은 'npm start' 로 실행할 수 있다.
const express = require('express');
const app = express();
app.set('port', process.env.PORT || 3000);
app.get('/', (req, res) => {
res.send('hello express');
});
app.post('/', (req, res) => {
res.send('hello express');
});
app.get('/about', (req, res) => {
res.send('hello about');
});
app.listen(app.get('port'), () => {
console.log('익스프레스 서버 실행');
});
express 패키지를 설치했다면 자바스크립트 파일에서 express 모듈을 사용할 수 있다.
express 를 require 후 아래와 같이 express를 받아와 사용할 수 있게 된다. (express는 기본 파일을 app.js로 사용하는 경우가 많다.)
const app = express();
기존 node에서 제공하는 http 모듈과는 다르게 app.get(), app.post() 등으로 RESTful API를 if문 없이 손쉽게 사용할 수 있다.
위의 코드에서 set('key', 'value); 은 속성으로 보면 되는데, 값을 세팅하면 원하는 위치에 get('key')로 값을 사용할 수 있다.
nodemon 패키지를 설치와 package.json의 scripts 부분을 수정했다면 'npm start'로 nodemon으로 app.js를 실행시킬 수 있다.
그냥 node.js 로 app.js를 실행시키는 것은 app.js에 수정사항이 생겼을 경우 서버를 종료 후 재시작해야한다.
그러나 nodemon으로 app.js를 실행한다면다르게 수정사항에 대해 서버를 종료 후 재시작하는 작동을 한다.
const express = require('express');
const app = express();
app.set('port', process.env.PORT || 3000);
app.get('/', (req, res) => {
res.send('hello express');
});
app.post('/', (req, res) => {
res.send('hello express');
});
app.get('/test', (req, res) => {
res.send('hello test');
});
app.listen(app.get('port'), () => {
console.log('익스프레스 서버 실행');
});
위와 같이 코드를 변경 후 app.js 파일을 저장하면 서버가 자동으로 종료 후 재시작되는 것을 알 수 있다. 이것이 nodemon을 사용하는 이유이다.
'Node.js' 카테고리의 다른 글
익스프레스 웹 서버 만들기 - 미들웨어(정의, 에러처리, next() 활용) (0) | 2025.01.13 |
---|---|
익스프레스 웹 서버 만들기 - express로 HTML 서빙하기 (0) | 2025.01.12 |
Node Package Manager (npm) (0) | 2025.01.11 |
http 모듈로 서버 만들기 (0) | 2025.01.11 |
Node.js 기본 모듈 (global,console,타이머 등등) (0) | 2025.01.09 |