0
나는 async.waterfall을 사용하여 결과를 반환하는 일련의 방법을 사용합니다. Ajax를 사용하고 나중에 결과로 작업하기 때문에 결과를 request.session 변수에 저장합니다. 그러나 세션 변수의 값을 설정할 수는 있지만 나중에 가져올 수는 없습니다.비동기 폭포에서 세션에 결과를 저장할 수 없습니다.
다음은 폭포에서 가져온 코드입니다.
async.waterfall([
//Some functions
], function(err, result) {
request.session.cases = result;
response.render('template.jade', {
items : result
});
나는 그 다음 request.session.cases
의 경우 필터 다른 URL에 JQuery와로드를 수행합니다. 하지만 request.session.cases
은 정의되지 않았습니다.
app.get('/case/:bugid', function(request, response) {
console.log(request.session.cases); //undefined
}
이상한 부분
내가 결과 이외의 다른request.session.cases
을 설정할 수 있습니다 (I도
result[0]
로 설정할 수 있습니다) 및 괜찮을 것입니다. 또한 Ajax 호출을 수행하기 전에 결과의 값을 인쇄했으며 객체 배열을 실제로 채 웁니다.
쿠키 셸 (cookieSession)을 사용하고 있는데, 이유가 무엇이든간에 그렇게 할 수 없었습니다 (어쩌면 너무 컸습니다). 세션을 사용하는 것으로 바뀌었고 이제는 괜찮습니다. – n00b