0
我想使用Redis会话模块来创建和存储会话数据。它适用于我使用Web套接字进行通信时,但我试图让它在服务器端页面加载上工作以检查用户是否已登录。我得到这个奇怪的错误:NodeJS Redis会话“cb不是函数”
TypeError: cb is not a function at RedisSessions._handleError (node_modules/redis-sessions/index.js:452:7) at RedisSessions._handleError (node_modules/redis-sessions/index.js:19:61) at RedisSessions._validate (node_modules/redis-sessions/index.js:554:20) at RedisSessions.get (node_modules/redis-sessions/index.js:140:22) at RedisSessions.get (node_modules/redis-sessions/index.js:19:61) at Object.module.exports.getHomepage (server/pages.js:29:39) at next (native)
at Object.dispatch (node_modules/koa-router/lib/router.js:331:14)
at next (native)
at Object.<anonymous> (node_modules/koa/node_modules/koa-compose/index.js:29:12)
的代码类似于:
var RedisSessions = require("redis-sessions");
var rs = new RedisSessions();
module.exports = {
getHomepage: function*()
{
var dataObj = yield initialiseSite();
var sessionCookie = this.cookies.get('userid');
console.log('sessionCookie='+sessionCookie);
if(sessionCookie)
{
var sessionObj = yield rs.get({ app: 'appname', token: sessionCookie});
console.log('sessionObj='+sessionObj)
if(sessionObj)
console.log('user is already logged in')
}
}
}
这可能是因为我使用koajs和收益?
您的权利。它不支持收益率。只是我习惯使用产量并把它们放在错误的地方。 – user3508995