Node.js 강좌 자료] body-parser 미들웨어

 

Node.js 강좌 자료] body-parser 미들웨어

 

 

실무개발자를위한 실무교육 전문교육센터학원
www.oraclejava.co.kr에 오시면 보다 다양한 강좌를 보실 수 있습니다.

 

 

 

body-parser 미들웨어

 

 

 
- POST 요청 데이터를 추출하는 미들웨어
 »외부 모듈이기 때문에 별도 설치해서 사용
 $ npm install body-parser
 »body-parser를 사용하면 request 객체에 body 속성이 추가됨


 - 예제
const express = require('express')
const morgan = require('morgan')
const bodyParser = require('body-parser')
const cookieParser = require('cookie-parser')
const session = require('express-session')
const app = express()
const port = 8081

app.set('view engine', 'ejs')
app.set('views', __dirname + '/views')

app.use(bodyParser.urlencoded({ extended:false }))
app.use(cookieParser())
app.use(morgan({ format: 'dev', immediate: true }))
app.use('/',express.static('./html'))

const cookieName = 'connect.sid'
app.use(session({
    name: cookieName,
    secret: 'session secret',
    resave: true,
    saveUninitialized: false
}))
app.listen(port, () => {
    console.log(`기동했습니다. http://localhost:${port}`)
})

app.get('/', (req, res) => {
    const username = req.session.username
    res.render('index', { title: 'Login Page', username: username })
})

app.post('/login', (req, res) => {
    const username = req.body.username;
    const password = req.body.password;

    if (username == 'oraclejava' && password == '1234') {
        req.session.username = username;
        res.redirect('/')
    } else {
        res.render('index', { title: 'Login Page', error: '사용자이름이나 비번을 다시 입력해 주십시오' })
    }
})

app.post('/logout', (req, res) => {
    req.session.destroy()
    res.clearCookie(cookieName)
    res.redirect('/')
})

 

+ Recent posts