코딩쌀롱

[Node.js] express 웹 서버 간단하게 만들기 본문

개발공부

[Node.js] express 웹 서버 간단하게 만들기

이브✱ 2021. 2. 23. 13:25

1. package.json 파일 만들기 

npm init // 직접 정보 입력
npm init -y // 디폴트값으로 자동 생성

2. express, nodemon 설치 + package.json의 scripts에 "start": "nodemon app" 추가

npm i express
npm i -D nodemon
// -D는 --save-dev의 줄임말로, 개발자용 패키지로 설치하는 것.
// package.json의 devDependencies 속성에 저장된다.

3. 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.listen(app.get('port'), () => {
   console.log(app.get('port'), '번 포트에서 대기 중');
});

app.set(키, 값) : 데이터 저장. app.get(키)로 가져올 수 있다.  

app.get(주소, 라우터) : 주소에 대한 GET 요청이 올 때 어떤 동작을 할지. req는 요청에 관한 정보가 들어있는 객체, res는 응답에 관한 정보가 들어있는 객체. 위 코드로는 GET / 요청 시 응답으로 Hello, Express를 전송. GET 요청 외에도 app.post, app.put, app.patch, 등 메서드가 존재한다.

app.listen : http 웹 서버와 동일. 포트를 연결하고 서버 실행. 위 코드에서 port를 app.get('port')로 가져온 것. 

 

4. npm start 했을 때 정상 작동 확인. localhost:3000으로 접속하면 Hello, Express 출력됨.

 

5. HTML로 응답하고 싶다면 res.sendFile 메서드 사용. Localhost:3000으로 접속하면 html 나옴.

const express = require('express');
const path = require('path');

const app = express();
app.set('port', process.env.PORT || 3000);

app.get('/', (req, res) => {
   // res.send('Hello, Express');
   res.sendFile(path.join(__dirname, '/index.html'));
});

app.listen(app.get('port'), () => {
   console.log(app.get('port'), '번 포트에서 대기 중');
});

 


참고📚

책 : 조현영 - Node.js 교과서

Comments