소개
이 랩에서는 JavaScript 에서 HTTP 쿠키 파싱 (parsing) 에 대해 자세히 알아보겠습니다. 이 랩의 목적은 HTTP 헤더 문자열에서 쿠키 데이터를 추출하고 정리하는 방법에 대한 실습 경험을 제공하는 것입니다. 이 랩을 마치면 parseCookie 함수를 사용하여 모든 쿠키 이름 - 값 쌍을 포함하는 객체를 생성하는 방법을 명확하게 이해하게 될 것입니다.
JavaScript 함수를 사용하여 HTTP 쿠키 파싱하기
JavaScript 에서 HTTP Cookie 헤더 문자열을 파싱하고 모든 쿠키 이름 - 값 쌍의 객체를 반환하려면 다음 단계를 따르세요.
- 터미널/SSH 를 열고
node를 입력하여 코딩 연습을 시작합니다. String.prototype.split()을 사용하여 키 - 값 쌍을 서로 분리합니다.Array.prototype.map()및String.prototype.split()을 사용하여 각 쌍에서 키와 값을 분리합니다.Array.prototype.reduce()및decodeURIComponent()를 사용하여 모든 키 - 값 쌍을 가진 객체를 생성합니다.
다음은 위의 단계를 구현하는 parseCookie() 함수의 예시입니다.
const parseCookie = (str) =>
str
.split(";")
.map((v) => v.split("="))
.reduce((acc, v) => {
acc[decodeURIComponent(v[0].trim())] = decodeURIComponent(v[1].trim());
return acc;
}, {});
다음과 같이 함수를 테스트할 수 있습니다.
parseCookie("foo=bar; equation=E%3Dmc%5E2");
// { foo: 'bar', equation: 'E=mc^2' }
요약
축하합니다! 쿠키 파싱 랩을 완료했습니다. LabEx 에서 더 많은 랩을 연습하여 실력을 향상시킬 수 있습니다.