Connect는 노드 미들웨어 프레임워크입니다. 자세한 사항은 공식 홈페이지 http://www.senchalabs.org/connect/
를 참고해주세요.
app.js에서 구성(app.use(routes) 앞에 배치되어야 함;)
var connect = require("connect") ;
app.use(connect.cookieParser());
app.use(connect.session({ secret: 'jiami', cookie: { maxAge: 60*60*24*1000}}));
그런 다음 컨트롤러에서
을 사용하세요.
//Set
req.session .username= "sess_username";
req.session.password="sess_admin";
req.session.your = {username:"sess_name",password:"sess_pwd"};
//사용
console .log(req.session.username);
console.log(req.session.your);
다른 방법
//세션 로그아웃
req .session.destroy (function(err){
console.log(err);
})
//sid 재생성
req.session.regenerate(function(err){
console .log( 오류);
});
세션이 설정되면 쿠키에 세션 ID를 기록하는 추가 sid가 있음을 알 수 있습니다
req.cookies 및 req.session 객체 인쇄
console.log(req.cookies);
console.log(req.session);
connect.sid를 저장하면 세션이 클라이언트와 대화하는 것을 볼 수 있지만 세션은 메모리에 저장되어 있습니다
2. 쿠키, 공식 문서: (http://www.senchalabs.org/connect/cookieParser.html 이 문서는 나를 하루 종일 속였습니다.) 다음 예제를 제가 시도했다는 것은 말할 필요도 없습니다. 문서에는 사용법이 없습니다
설정
//쿠키 설정
res. cookie(" 사용자",{사용자 이름:"cookie_name",password:"cookie_pwd"},{ maxAge: 60*60*24*1000,httpOnly:true, 경로:'/'});
res.cookie( "msg" , "사용자 이름 또는 비밀번호는 비워둘 수 없습니다.", {maxAge:60*60*24*1000});
삭제
res.cookie("msg", " 사용자 이름 또는 비밀번호는 비워둘 수 없습니다.", {maxAge:0});