Node.js Express 로 GET 요청 처리

버건디·2022년 12월 9일
0

Node.js

목록 보기
4/15
post-thumbnail

🔍 Express 란 ?

Express 는 Node.js 의 프레임워크이다.

기존에 http.createServer 를 이용해서 코드를 작성하는거보다 Express 를 사용하면

더 많은 기능들과, 서버를 제작하는 과정에서 불편함을 줄일 수 있다.

또한 수많은 개발자들에게 개발 규칙을 강제하여 코드 및 구조의 통일성을 향상시킬 수 있다.

🔍 Express 사용하기

const express = require('express'); // Express 실행
const app = express(); // app 변수에 할당

app.set('port', process.env.PORT || 3000); 
// app.set('port', 포트) 로 서버가 실행될 포트 설정. 
//process.env 객체에 PORT 속성이 존재 한다면 그 값을 사용하거나, 아니라면 3000번 포트를 할당. 
// app.set(키, 값)을 사용해서 데이터를 저장할 수 있고. 나중에 app.get(키)를 사용해서 그 데이터를 가져올 수 있음.


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

//위에 썼던 것처럼 app.get(키)를 사용해서 포트 번호를 사용하였다.
// app.listen(포트번호, 포트에 접속했을때 실행될 코드) 의 2개의 파라미터가 필요하다. 

위의 코드대로 작성하면 3000번 포트에서 대기중이라는 문구를 볼수 있지만,
http://localhost:3000/ 로 접속해보면

라는 화면이 띄어진다.

아무런 GET 요청이 없어서인데, GET 요청이라는것은 즉, 서버에 GET(어디 페이지로 접속하려는) 요청을 서버에게 전달하고, 그 서버가 요청을 처리해준다는 것을 얘기한다.

app.get('/', (req, res) => {
    res.send('Hello Express');
})

//app.get(주소, 라우터)는 어떤 주소에 대한 GET 요청이 들어올때 콜백함수가 실행되는 것이다.
//매개변수 req는 요청에 대한 정보, res 는 응답에 대한 정보가 들어 있고, 
//메인 페이지로 GET 요청이 들어오면 응답으로 Hello Express 라는 문구를 전송해주는 것이다.

🔍 문구가 아닌 HTML 파일 보내주기

const express = require('express');
const app = express();
const path = require('path'); // 파일을 보낼때는 path 모듈을 사용해서 경로 지정


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


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

app.get('/', (req, res) => {
    res.sendFile(path.join(__dirname, 'index.html')); // send가 아닌 sendFile 메서드 사용
})

잘 작동되는 것을 볼 수 있다.

profile
https://brgndy.me/ 로 옮기는 중입니다 :)

0개의 댓글