백엔드/NodeJs
[NodeJs] 순수 NodeJs와 Express 404 에러 처리 방법
jinwanseo
2021. 3. 30. 22:35
728x90
순수 NodeJs, Express에서의 404 에러 처리
NodeJs로 구현한 웹 애플리케이션에
클라이언트가 잘못된 주소에 접근하게되면
404 와 같은 에러 처리를 해주어야 한다.
물론 기본 프레임웍을 사용하지 않는
nodejs에서는 분기처리를 통해 간단한 일이지만,
express에서는 어떻게 해결해야 할까?
순수 NodeJs 코드에서 분기를 통한 404 에러 처리
//기본 nodejs에서 404 에러 처리
const http = require('http');
const url = require('url');
const app = http.createServer((req,res)=>{
let pathname = url.parse(req.url,ture).pathname;
//지정된 페이지 일시, 200
if(pathname === '/') {
res.writeHead(200);
res.end('기본 페이지');
}
//지정된 페이지가 아닐시 404
else {
res.writeHead(404);
res.end('not found');
}
});
Express에서의 404 에러처리
//Express에서의 404 에러처리
const express = require('express');
const app = express();
//기본 페이지 로드 200
app.get('/',(req,res)=>{
res.send('기본페이지');
});
//에러 페이지 로드 404
app.get((req,res)=>{
res.status(404).send('not found');
});
Express에서의 에러처리는 코드의 마지막에
에러처리 미들웨어를 작성해주면 된다.
서버에서 해당 주소를 찾다가 마지막까지 없다면
해당 미들웨어를(에러처리) 실행하게 되는 것이다.
728x90