Express.js는 Node.js 기반의 웹 애플리케이션 개발을 위한 빠르고 간결한 프레임워크입니다. 이번 포스트에서는 Express.js에서 쿠키를 설정하는 방법에 대해 알아보겠습니다.
쿠키란?
쿠키는 웹사이트가 사용자의 브라우저에 저장하는 작은 데이터 조각입니다. 이 데이터는 서버와 클라이언트 간의 상태를 유지하거나 사용자의 선호도를 추적하는 데 사용될 수 있습니다.
Express.js에서 쿠키 설정하기
Express.js에서는 쿠키를 설정하기 위해 res.cookie()
메서드를 사용합니다. 이 메서드는 다음과 같은 구문을 가지고 있습니다:
res.cookie(name, value, [options]);
name
은 쿠키의 이름을 나타내는 문자열입니다.value
는 쿠키에 할당되는 값입니다.options
는 선택적 매개변수로, 쿠키의 속성 값을 설정할 수 있습니다.
쿠키 설정 예제
아래는 Express.js에서 쿠키를 설정하는 예제입니다.
const express = require('express');
const app = express();
app.get('/set-cookie', (req, res) => {
res.cookie('username', 'JohnDoe', { maxAge: 900000, httpOnly: true });
res.send('Cookie has been set');
});
app.listen(3000, () => {
console.log('Server running on port 3000');
});
위 예제에서 /set-cookie
엔드포인트로 요청이 들어오면 res.cookie()
메서드를 사용하여 username
이라는 이름의 쿠키를 설정합니다. 쿠키의 값은 'JohnDoe'
이며, maxAge
속성을 사용하여 쿠키의 유효기간을 설정하였고, httpOnly
속성을 true
로 설정하여 클라이언트 스크립트에서 쿠키에 접근하지 못하도록 하였습니다.
쿠키 읽기 예제
Express.js에서는 req.cookies
객체를 사용하여 쿠키를 읽을 수 있습니다. 아래는 쿠키를 읽어오는 예제입니다.
app.get('/read-cookie', (req, res) => {
const username = req.cookies.username;
res.send(`Hello, ${username}!`);
});
위 예제에서 /read-cookie
엔드포인트로 요청이 들어오면 req.cookies
객체에서 username
쿠키 값을 읽어와서 화면에 출력합니다.
마무리
Express.js에서 쿠키를 설정하고 읽어오는 방법에 대해 알아보았습니다. 쿠키를 사용하여 사용자의 상태를 유지하거나 선호도를 추적하는 등의 기능을 구현할 수 있습니다. Express.js의 res.cookie()
메서드와 req.cookies
객체를 통해 쿠키를 쉽게 다룰 수 있습니다.