'会话'未定义-会话存储的Este JS/Express/Redis

'session' is undefined - Este JS / Express / Redis for session store

本文关键字:会话 Express Redis JS 存储 未定义 Este      更新时间:2023-09-26

我正试图在我的express应用程序中使用redis进行会话。

我做以下事情:

服务器/auth.js

import express from 'express';
import uuid from 'uuid';

const router = express.Router();
router.route('/login').post((req, res) => {
    const { password } = req.body;
    if (password !== 'pass1') {
        res.status(401).end();
    } else {
        const token = uuid.v4();
        req.session.token = token;
        res.status(200).send({token}).end();
    }
});
router.route('/watch').post((req, res) => {
    console.log(req.session.token);
    res.status(200).send({}).end();
});
router.route('/logout').post((req, res) => {
    ...
});
export default router;

server/api.js

import express from 'express';
import session from 'express-session';
import cookieParser from 'cookie-parser';
import bodyParser from 'body-parser';
import cors from 'cors';
import redis from 'redis';
import connectRedis from 'connect-redis';
import auth from './auth';

const app = express();
let client  = redis.createClient();
let RedisStore = connectRedis(session);
app.use(cors());
app.use(session({
    secret: 'ssshhhhh',
    store: new RedisStore({ host: 'localhost', port: 6379, client: client, ttl: 260}),
    saveUninitialized: false,
    resave: false
}));
app.use(cookieParser("secretSign#143_!223"));
app.use(bodyParser.urlencoded({extended: false}));
app.use(bodyParser.json());

app.use('/auth', auth);
app.on('mount', () => {
    console.log('Api is available at %s', app.mountpath);
});
export default app;

server/main.js

import express from 'express';
import api from './api';
import frontend from './frontend';
import errorHandler from './lib/errorHandler';
import config from './config';

const app = express();
app.use('/api/v1', api);
app.use(frontend);
app.use(errorHandler);
app.listen(config.port, () => {
    console.log('Server started at port %d', config.port);
});

文件服务器/auth.js的console_log()使我"未定义"。

我使用的是Este JS框架。

有人能帮我吗

谢谢

问题已经解决。同构获取不向服务器发送Cookie

https://github.com/matthew-andrews/isomorphic-fetch/issues/89