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