sessionId가 주어지면, 나는 익스프레스 세션 객체를 가질 필요가있다. 그런 다음이 세션 개체를 편집하여 세션 저장소의 세션을 자동으로 업데이트하도록 할 수 있습니다. ?이 테스트를 실행할 때빠른 세션 다시 만들기?
Session = require('express').session.Session;
_testSession: (sStore, sId) ->
console.log 'called _testSession with session id: ' + sId
sStore.get sId, (error, session) ->
expressSession = new Session
sessionId: sId
sessionStore: sStore
, session
expressSession.foo = 17
console.log 'set expressSession.foo to: ' + expressSession.foo
setTimeout (()->
sStore.get sId, (error, session) ->
console.log 'foo = ' + session.foo
), 1000
그러나, 나는 다음과 같은 출력을 얻을 :
이called _testSession with session id: YaFLcq3eSvoNuwnLS1T1ntrC.3UJMuQ5So6lYRWLDgIRx4Vk/Ab1qH65zV9IwMqoMcR8
set expressSession.foo to: 17
foo = undefined
사람이 여기에 무슨 일이 일어나고 있는지 어떤 생각을 가지고 있습니까을 ... :(
=== = EDIT ====
코드를 읽을 수 있도록 save()도 호출 해 보았습니다.
console.log 'set expressSession.foo to: ' + expressSession.foo
expressSession.save (error) ->
console.log 'error: ' + error
setTimeout (()->
sStore.get sId, (error, session) ->
console.log 'foo = ' + session.foo
), 1000
그리고 같은 출력 :(
==== 편집 ====
신경 끄시 고, 저장을 얻었다는() 작동합니다. sessionId는 sessionID .../facepalm이어야합니다.
"자동으로 업데이트"한다는 의미입니까? Session 개체의 save 메서드를 호출하지 않아도됩니까? http : //www.senchalabs.org/connect/session.html – robkuz
내 게시물을 업데이트했습니다. 슬프게도 save()를 호출하면 도움이되지 않았습니다. ( – user1161657
Nvm, sessionId는 sessionID 여야합니다. – user1161657