web
express 서버 사용하기
tpghks9245
2022. 4. 25. 19:04
express
http 모듈로 웹 서버를 만들 때 코드가 보기 좋지 않고, 확장성도 떨어짐.
- 프레임 워크로 해결.
- 대표적인 것이 Express(익스프레스), Koa(코아), Hapi(하피).
- 코드관리도 용이하고 편의성이 많이 높아짐.
미들웨어
클라이언트에게 요청이 오고 그 요청을 보내기 위해 응답하려는 중간에 목적에 맞게 처리를 하는 함수(?).
라우터에서 중복되는 코드 제거 가능.
const express = require('express'); // express서버
const path = require('path'); // 경로처리를 위해
const app = express();
app.set('port', process.env.PORT || 3000);
app.use((req, res, next) => { // 어떤 주소로 가던지 실행됨. next()넣어줘야 다음으로 넘어감.
console.log('모든 요청에 실행하고 싶어요.');
next();
});
app.get('*', (req, res) => { // 모든 주소에 대해 반응. 이렇게 넣으면 안됨.
res.send('all');
});
app.get('/', (req, res) => {
res.sendFile(path.join(__dirname, 'index.html'));
});
app.post('/', (req, res) => {
res.send('hello express!');
});
app.get('/about/:name', (req, res) => { // :name 부분으로 인해 /about/ <- 이부분에 어떤것을 넣던 이 함수가 실행됨. 와일드카드
res.send('wild card');
});
app.get('/about/1', (req, res) => { // 와일드카드로인해 실행안됨.
res.send('about');
});
app.listen(3000, () => {
console.log('익스프레스 서버 실행');
});