-
connect-pg-simple
추가npm i connect-pg-simple
-
해당 모듈 안의
table.sql
을 실행CREATE TABLE "session" ( "sid" varchar NOT NULL COLLATE "default", "sess" json NOT NULL, "expire" timestamp(6) NOT NULL ) WITH (OIDS=FALSE); ALTER TABLE "session" ADD CONSTRAINT "session_pkey" PRIMARY KEY ("sid") NOT DEFERRABLE INITIALLY IMMEDIATE; CREATE INDEX "IDX_session_expire" ON "session" ("expire");
-
Session
import session from 'express-session'; import pgSession from 'connect-pg-simple'; const pgs = pgSession(session); app.use(session({ store: new pgs({ // id:pw@host:port/database conString: 'pg://postgres:postgres@localhost:5432/postgres', ttl: '60', }), key: 'key', secret: 'secret', resave: true, // 세션 변경이 없어도 덮어 쓸지 설정 secure: true, // https httpOnly: true, // js에서 세션, 쿠키를 사용할 수 없음 saveUninitialized: false, // 초기화되지 않은 세션을 저장할지 설정 cookie: { // 쿠키 }, })); console.log('Log:', req.session);
- json 데이터를 SELECT
SELECT sess -> 'cookie' -> 'expires' FROM session;