>웹 프론트엔드 >JS 튜토리얼 >Connect Middleware Session 및 cookie_node.js 활용방법 공유

Connect Middleware Session 및 cookie_node.js 활용방법 공유

WBOY
WBOY원래의
2016-05-16 16:44:021843검색

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});

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.