코드

// Express 기본 모듈 불러오기

var express = require('express')

, http = require('http')

, path = require('path');

 

// Express의 미들웨어 불러오기

var bodyParser = require('body-parser')

, static = require('serve-static')

, errorHandler = require('errorhandler');

 

// 에러 핸들러 모듈 사용

var expressErrorHandler = require('express-error-handler');

 

// 익스프레스 객체 생성

var app = express();

 

// 기본 속성 설정

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

 

// body-parser를 이용해 application/x-www-form-urlencoded 파싱

app.use(bodyParser.urlencoded({ extended: false }))

 

// body-parser를 이용해 application/json 파싱

app.use(bodyParser.json())

 

app.use('/public', static(path.join(__dirname, 'public')));



// 라우터 사용하여 라우팅 함수 등록

var router = express.Router();

 

router.route('/process/login').post(function(req, res) {

  console.log('/process/login 처리함.');

 

  var paramId = req.body.id || req.query.id;

  var paramPassword = req.body.password || req.query.password;

  

  res.writeHead('200', {'Content-Type':'text/html;charset=utf8'});

  res.write('<h1>Express 서버에서 응답한 결과입니다.</h1>');

  res.write('<div><p>Param id : ' + paramId + '</p></div>');

  res.write('<div><p>Param password : ' + paramPassword + '</p></div>');

  res.write("<br><br><a href='/public/login2.html'>로그인 페이지로 돌아가기</a>");

  res.end();

});

 

app.use('/', router);



// 등록되지 않은 패스에 대해 페이지 오류 응답

app.all('*', function(req, res) {

  res.status(404).send('<h1>ERROR - 페이지를 찾을 수 없습니다.</h1>');

});



// 404 에러 페이지 처리

var errorHandler = expressErrorHandler({

static: {

'404': './public/404.html'

}

});

 

app.use( expressErrorHandler.httpError(404) );

app.use( errorHandler );



// Express 서버 시작

http.createServer(app).listen(app.get('port'), function(){

console.log('Express server listening on port ' + app.get('port'));

});

로그

 

C:\Program Files\nodejs\node.exe app.js

 

3000Express server listening on port 3000

 

설명 

 

http://localhost:3000/ㅇㄹㄷ

 

위 코드 실행 이후 위처럼 존재하지 않는 주소 접속 시

var errorHandler = expressErrorHandler({

static: {

'404': './public/404.html'

}

});

 

위 코드에 의해 자동으로 404.html 페이지로 이동하게 됩니다.

핸들러를 등록해두면 에러 발생시 처리됩니다.

'IT > Node JS' 카테고리의 다른 글

Node.js 세션 사용하기  (0) 2019.06.05
Node.js 쿠키 사용하기  (0) 2019.06.05
Node.js params 객체 사용하기  (0) 2019.06.05
Node.js Post 방식 사용하기  (0) 2019.06.04
Node.js 헤더 정보 및 get 방식 사용하기  (0) 2019.06.04

+ Recent posts