Что я делаю не так?
Есть вот такая функция -
function getauth(account_id,session,callback){
make_key(account_id,function(err,result){
if(result!=null){
session.auth_key=result.toString('hex');
session.account_id=account_id;
findclient({name:account_id},function(err,result){
if(err!=null){
console.log(err);
}else{
console.log('Findlcient on getauth: sid='+result.accounts[0].sid+',token='+result.accounts[0].auth_token);
session.account_sid=result.accounts[0].sid;
session.account_token=result.accounts[0].auth_token;
console.log(session);
}
});
callback(null,session.auth_key);
}else{
callback(err,null);
}
}); }
В результате её выполнения почему-то console.log(session) отдает всё как надо:
{ cookie:
{ path: '/',
_expires: null,
originalMaxAge: null,
httpOnly: true },
auth_key: 'c684c0bf8139fc3903ffcdb7b25180544f8f408a79aceeb4952d315a49627b80',
account_id: 'ss',
account_sid: 'ACba7f95311673301adf8203bda6ebd01f',
account_token: '860c23f6afdb7e05163fe0374a94c55c' }
но в Mongo я вижу только это -
{ cookie: {"originalMaxAge":null,"expires":null,"httpOnly":true,"path":"/"},
"auth_key":"c684c0bf8139fc3903ffcdb7b25180544f8f408a79aceeb4952d315a49627b80",
"account_id":"ss"
}
Как мне всё же заставить записаться недостающие два поля?
PS: модули:
var express = require('express');
var session = require('express-session');
var MongoStore = require('connect-mongo')(session);
Источник: Stack Overflow на русском