Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- c3 step graph
- CentOS7
- linux시간으로 변경
- telegraf
- python subprocess
- snmp test
- 1697
- 정규식 활용
- subporcess path
- c3 축 없애기
- 정규식 컴파일
- c++ 정규식
- python os
- snmp
- 정규식 문자열 출력
- grafana dashboard
- regex_search
- python popen
- semanage
- c3 축 가리기
- gcc 업데이트
- c3 second
- InfluxDB
- selinux port 등록
- centos pyhon 설치
- 백준
- gcc regex
- c3 초
- g++ 업데이트
- influxdb 설치
Archives
- Today
- Total
리셋 되지 말자
[express] session 객체 본문
session 객체
var express = require('express')
var parseurl = require('parseurl')
var session = require('express-session')
var app = express()
app.use(session({
secret: 'keyboard cat',
resave: false,
saveUninitialized: true
}));
app.get('/', function (req, res, next) {
console.log(req.session);
res.send('hello session');
})
app.listen(3000, function(){
console.log('nodejs server is listening on port 3000....');
})
위처럼 루트 페이지에 접속하면, 아래와 같이 콘솔에 Session 객체가 출력된다.
nodejs server is listening on port 3000....
Session {
cookie: { path: '/', _expires: null, originalMaxAge: null, httpOnly: true }
}
session 미들웨어가 내부적으로 request 객체의 property로 session이라는 객체를 추가해준다는 것을 알 수 있다.
session 객체의 값 이용하기
var express = require('express')
var parseurl = require('parseurl')
var session = require('express-session');
var app = express()
app.use(session({
secret: 'keyboard cat',
resave: false,
saveUninitialized: true
}));
app.get('/', function (req, res, next) {
console.log(req.session);
if(req.session.num === undefined){
req.session.num=1;
}
else{
req.session.num += 1;
}
res.send(`Views : ${req.session.num}`);
})
app.listen(3000, function(){
console.log('nodejs server is listening on port 3000....');
})
코드를 위와같이 수정한다.
루트 페이지로 접속했을 때, session의 'num'이 없으면, num을 추가하고 1을 할당한다. 'num'이 있으면, num의 값을 1씩 더하면서 화면에 출력하는 내용이다. 처음 접속하면 아래와 같다.
새로고침을 하면, 숫자가 증가한다.
콘솔에 출력되는 session 객체를 출력하면, 아래와 같이 num이 추가가 되고 1씩 증가하는 것을 확인할 수 있다.
nodejs server is listening on port 3000....
Session {
cookie: { path: '/', _expires: null, originalMaxAge: null, httpOnly: true }
}
Session {
cookie: { path: '/', _expires: null, originalMaxAge: null, httpOnly: true },
num: 1
}
Session {
cookie: { path: '/', _expires: null, originalMaxAge: null, httpOnly: true },
num: 2
}
session 미들웨어는 내부적으로 세션 저장소라는 곳에 num 이라고 하는 이름의 값으로 1을 저장하고, 그 다음에 요청할 때 다시 1이라는 값을 제공한다. 다시 요청하면 1이 더해진 값을 제공한다.
이 값은, Memory에 저장되어 있다.
nodejs 웹서버를 종료하고 다시 리로드를 하면 1부터 다시 시작한다. 즉 session의 정보가 다 날라간다.
'NodeJS > 생활코딩' 카테고리의 다른 글
[express] session & auth 인증 구현 (0) | 2020.09.27 |
---|---|
[express] session store (0) | 2020.09.27 |
[express] session 옵션 (0) | 2020.09.27 |
[express] session (0) | 2020.09.27 |
[NodeJS] 쿠키를 이용한 기능 구현 (0) | 2020.09.25 |
Comments