使用MySql在Nodejs中持久化会话

时间:2015-08-11 15:22:17

标签: mysql session express

nodejs的新手。这可能是一个愚蠢/容易的问题

我有一个Express App,我正在使用mysql进行持久会话。 (使用express-mysql-session来做到这一点)。

以下是app.js的代码段:

var express = require('express');
var session = require('express-session');
var SessionStore = require('express-mysql-session');
var app = express();

app.use(session({
  store: new SessionStore({
    host: 'localhost',
    user: 'test',
    password: 'test',
    database: 'test'
  }),
  secret: 'secret_key',
  resave: false,
  saveUninitialized: false
}));

routes.js

module.exports = function(app) {
    app.post('/login', wrap(function* (req, res) {
        var email = req.body.email;
        var password = req.body.password;
        var response = yield new AccountController().login(email, password);

        if (response.status === 'success') {
            req.session.account = {
                accountId: response.accountId,
                accountStatus: response.accountStatus
            };
            req.session.save(function(err) {
                if (err) console.log('error in saving session: ' + err);
            });

        }
    }
}));

每次发送请求时都会调用express-mysql-session的get和set方法。 我想知道如何在不使用护照等任何其他库的情况下将自定义数据设置到持久会话存储中。 以及如何阅读商店。

0 个答案:

没有答案