[REDIS] '세션'표현을 사용하는 경우 정의되지는 / 세션 저장소에 대한 레디 스
REDIS'세션'표현을 사용하는 경우 정의되지는 / 세션 저장소에 대한 레디 스
내 특급 응용 프로그램에서 세션 레디 스를 사용하는 것을 시도하고있다.
나는 다음을 수행 :
var express = require('express');
var RedisStore = require('connect-redis')(express);
app.configure('development', function(){
app.use(express.session({ secret: "password",
store: new RedisStore({
host: "127.0.0.1",
port: "6379",
db: "mydb"
})
}));
나중에, 내 응용 프로그램에서, 내가 좋아하는 뭔가를 할 경우 :
var whatever = req.session.someProperty;
나는 얻다:
이 req.session이 정의되어 있음을 나타냅니다 (내 설정 섹션에서 CONSOLE.LOG 항목에서이를 볼 수 있습니다)
나는 확실히 레디 스 실행있어, 및 (레디 스-CLI 모니터를 사용) 처음에 내 응용 프로그램 커넥트를 볼 수 있습니다
해결법
-
==============================
1.외모는 당신에게없는 게 좋아 :
외모는 당신에게없는 게 좋아 :
app.use(express.cookieParser());
당신의 app.use 전 (express.session (...)); 요구.
여길 봐.
-
==============================
2.이 순서대로 3이 없으면 세션이 작동하지 않습니다 :
이 순서대로 3이 없으면 세션이 작동하지 않습니다 :
app.use(express.cookieParser()); app.use(express.session()); app.use(app.router);
라우터가 세션을 사용하는 것이 필수입니다 있는지 확실하지 않습니다, 그러나 그것은 그들 앞에 배치됩니다 경우 그들을 나누기.
-
==============================
3.동일한 문제가 있었다, 그러나 그것은 표현의 최신 버전의 변화에 의해 발생했다.
동일한 문제가 있었다, 그러나 그것은 표현의 최신 버전의 변화에 의해 발생했다.
이제 session.Store을 확장 수출 접속이 - 레디 스 함수에 명시 세션을 전달해야합니다 :
var express = require('express'); var session = require('express-session') var RedisStore = require('connect-redis')(session);
-
==============================
4.상황이 익스프레스 3 / 익스프레스 4 최근 변경되었습니다. 당신은 버전 4를 사용하여 확인하시기 바랍니다.
상황이 익스프레스 3 / 익스프레스 4 최근 변경되었습니다. 당신은 버전 4를 사용하여 확인하시기 바랍니다.
전체 미들웨어 개념이 변경되었습니다. 당신은 수동으로 미들웨어를 설치해야합니다. "특급 세션은"4.0 미들웨어 중 하나입니다.
나는 읽고 추천
http://scotch.io/bar-talk/expressjs-4-0-new-features-and-upgrading-from-3-0 및 https://github.com/visionmedia/express/wiki/Migrating-from- 3.x를 - 투 - 4.x의
또한 일부 사용자는 github에 자체가 그냥 "세션"라는 REPO하지만 혼동했다
npm install express-session
맞다.
-
==============================
5.저도 같은 문제가 있었다. 그것은 레디 스 단순히 다른 포트에 구성되었는지 밝혀졌다.
저도 같은 문제가 있었다. 그것은 레디 스 단순히 다른 포트에 구성되었는지 밝혀졌다.
from https://stackoverflow.com/questions/10191692/session-is-undefined-when-using-express-redis-for-session-store by cc-by-sa and MIT license
'REDIS' 카테고리의 다른 글
[REDIS] 레디 스는 메모리가 부족하면 어떻게합니까? (0) | 2019.12.30 |
---|---|
[REDIS] 효율성 : 레디 스 대 레디 스 문자열은 JSON을 표현하기 위해 해시? (0) | 2019.12.30 |
[REDIS] socket.io에 RedisStore 사용에 예 (0) | 2019.12.30 |
[REDIS] 레디 스 + ActionController :: 라이브 스레드가 죽어하지 (0) | 2019.12.30 |
[REDIS] 어떻게 socket.io에서 레디 스 연결을 재사용? (0) | 2019.12.30 |