Do it Node.js express를 이용하여 서버 만들기 3편 http보다 유용한 express 메소드를 알아보자

2018. 3. 9. 19:38javascript/node.js

유용한 메소드 알아보기



익스프레스에서 http와 달리 더 편하게 사용할 수 있는 메소드를 알아보자!!



메소드 이름설명
send([body])클라이언트에 응답데이터를 보냅니다. 전달 가능한 데이터를 HTML 문자열, Buffer 객체, Json객체, Json 배열
statusHttp 상태코드를 반환합니다. 상태코드는 send, end 같은 전송 메소드를 추가로 호출해야 전송할 수 있습니다.
SendStatus(statusCode)Http 상태코드를 반환합니다. 상태 코드는 상태메세지와 함께 전송됩니다.
redirect([status,]path)웹페이지 경로를 강제로 이동시킵니다.
render(view)뷰엔진을 사용해서 문서를 만든 후 전송합니다.


send 사용하기
var express = require('express'), http = require('http')
var app = express()


http.createServer(app).listen(3000,function () {
    console.log("create server port 3000")
})

app.use('/',function (req,res,next) {
    res.send({soccerTeam:'Arsenal',rank :1})
})



status 사용하기
var express = require('express')
, http = require('http')

var app = express()


http.createServer(app).listen('3000',function () {
    console.log('포트 3000에 연결합니다.')
})

app.use('/',function (req,res,next) {
    res.sendStatus(403)
})


status를 사용하면 상태코드를 전송 할 수 있습니다. 하지만 send 메소드는 상태코드를 작성만 하기 때문에 send메세지를 추가로 사용해주거나 sendStatus를 사용해주어야 합니다.




sendStatus(403)과 같은 결과가 나온다.



redirect 사용하기

redirect를 통해서 강제로 다른 사이트 또는 자기 프로젝트 내의 뷰문서로 이동 할 수 있다.

var express = require('express'), http = require('http')
var app = express()



app.use('/',function (req,res,next) {
    res.redirect('https://www.google.co.kr/')
})
http.createServer(app).listen('3000')