Backend/Node.js
[Node][Express] Middleware | 01. cookie-parser
Rayi
2024. 8. 19. 10:09
패키지 설치가 필요한 미들웨어 입니다.
cookie-parser는 요청으로 전달받은 쿠키를 파싱해주는 미들웨어입니다.
쿠키는 요청의 헤더값으로 전달되며, 원래는 문자열의 형태로 읽어올 수 있습니다.
import express from 'express'
const app = express()
app.get('/login', (req, res) => {
console.log(req.headers.cookie) // cookie 헤더의 값을 출력합니다.
return res.json({ message: 'get method called' })
})
app.listen(3000, () => {
console.log('Server is listening on port 3000')
})
다음과 같이 쿠키로 id=2345값을 요청에 포함시키면, 미들웨어는 이렇게 쿠키 값을 출력합니다.
GET http://localhost:3000/login
Cookie: id=12345
// 출력값
connect.sid=s%3AgMzrEUPCK2F6vPUSLfXF-laXcxtX5K_g.whufLDegwHxnDM5VVQfqjmz2F6DctlG5Oe%2Fro4mxWQA; id=12345
cookie-parser를 사용하면, 이 문자열을 좀 더 보기 쉽도록 객체 형태로 표시할 수 있습니다.
import express from 'express'
import cookieParser from 'cookie-parser' // 추가됨
const app = express()
app.use(cookieParser()) // 추가됨
app.get('/login', (req, res) => {
console.log(req.headers.cookie) // cookie 헤더의 값을 출력합니다.
return res.json({ message: 'get method called' })
})
app.listen(3000, () => {
console.log('Server is listening on port 3000')
})
GET http://localhost:3000/login
Cookie: id=12345
// 출력값
{
'connect.sid': 's:gMzrEUPCK2F6vPUSLfXF-laXcxtX5K_g.whufLDegwHxnDM5VVQfqjmz2F6DctlG5Oe/ro4mxWQA',
id: 12345
}
728x90