[Node.js] Cookie 와 Session

Asher Park·2022년 12월 18일
1
post-thumbnail

스파르타코딩클럽 내일배움캠프 Node.js 숙련주차 강의를 들으며 공부한 것을 적은것입니다.

브라우저가 서버로부터 응답으로 Set-Cookie 헤더를 받은 경우, 해당 데이터를 저장한 뒤 요청에 포함하여 보내는 정보

  • 데이터를 여러 사이트에 공유할 수 있으므로 보안에 취약할 수 있다.
  • 서버가 클라이언트의 Request를 받을 때, 서버는 Response와 Set-Cookie 라는 Header를 함께 보낼 수 있다.
app.get("/set-cookie", (req, res) => {
	const expire = new Date();
  	expire.setMinutes(expire.getMinutes() + 60);
  
 	res.writeHead(200, {
    	'Set-Cookie': `name=test; Expires=$(expire.toGMTString()}; HttpOnly; Path=/`,
    });
  	return res.status(200).end();
})

2. res.cookie()

app.get("/set-cookie", (req, res) => {
    const expires = new Date();
    expires.setMinutes(expires.getMinutes() + 60); 

    res.cookie('name', 'test', {
      expires: expires
    });
    return res.status(200).end();
});

1. Req를 이용하여 접근

app.get("/get-cookie", (req, res) => {
	const cookie = req.headers.cookie;
})

객체형식으로 만들어줌.

const cookieParser = require("cookie-parser");
app.use(cookieParser());

app.get("/get-cookie", (req, res) => {
	const cookie = req.cookies;
})

Session

쿠키를 기반으로 구성된 기술.

  • 데이터를 서버에만 저장하기 때문에 보안이 좋음.
  • 사용자가 많은 경우 서버에 부담이 갈 수 있음.
profile
배움에는 끝이없다

1개의 댓글

comment-user-thumbnail
2022년 12월 18일

손푸는척하면서 공부했네

답글 달기