node.js

[node.js] 쿠키, 세션

shb 2022. 2. 21. 17:18

사용자 정의 모듈
    사용자가 직접 만들어 코드를 관리할 수 있도록 작성한 모듈

1.
    module.exports = () =>{
        모듈 코드 선언
        ...
    }

    const 객체명 = require('파일명')();

2.
    모듈 코드
    ...
    module.export = 변수;

    const 객체명 = require('변수명');


JSON(Javascript Object Notation)
    데이터를 교환하고 저장하기 위해 만들어진 텍스트 기반의 데이터 교환 표준언어
    { Key : Value }
    { 배열명 : [값1,값2,...] }

JSON 문법 검증
    https://jsonlint.com/

JSON.parse("문자열")
    JSON 포맷으로 되어있는 문자열을 JSON 객체로 변환
    문자열 -> JSON 객체

JSON.stringify(JSON객체)
    JSON 객체를 JSON 포맷의 문자열로 변환
    JSON 객체 -> 문자열

cookie-parser 모듈
    쿠키를 쉽게 설정하고 사용할 수 있게 도와주는 모듈
    익스프레스 객체에 미들웨어로 등록
    npm i cookie-parser

    cp()                         : 일반 쿠키를 사용
    cp('암호화하기 위한 문자열')   : 암호화된 쿠키를 사용
    cp('!@%@#%@%@!%!!')

쿠키 생성
    resp.cookie('키','값',{ 쿠키 생성 옵션 })

쿠키 생성 옵션
    maxAge      : 쿠키 유효기간을 밀리초 단위로 설정
    expires     : 쿠키의 만료시간을 GMT 시간으로 설정
    path        : cookie의 경로를 설정. 기본설정은 "/"
    signed      : 암호화시 사용

 

쿠키 조회
    req.cookies.키값        : 일반 쿠키 사용
    req.signedCookies.키값  : 암호화된 쿠키 사용

쿠키 삭제
    resp.clearCookie('키값',{path:'경로'});



express-session 모듈
    세션을 관리하기 위한 익스프레스 미들웨어 모듈
    npm i express-session

세션 모듈의 옵션
    secret
        쿠키를 임의로 변조하는 것을 방지하기 위한 값
        이 값을 통해서 세션을 암호화해서 저장
    resave
        세션을 언제나 저장할지 지정하는 값.
        이 값은 false로 하는것을 권장
    saveUninitialized
        세션이 저장되기 전에 saveUninitialized 상태로 미리 만들어져서 저장

 

'node.js' 카테고리의 다른 글

[node.js] Jade, 메일 보내기  (0) 2022.02.21
[node.js] express 모듈, Router, EJS 모듈  (0) 2022.02.21
[node.js] fs 모듈, http 모듈, express 모듈  (0) 2022.02.21