session.js 689 B

12345678910111213141516171819202122232425262728
  1. const session = require('express-session');
  2. const uid = require('uid-safe').sync;
  3. const RedisStore = require('connect-redis')(session);
  4. const { redis } = require('../config');
  5. const { host, port, password: pass } = redis;
  6. // session中间件
  7. module.exports = () => {
  8. return session({
  9. secret: 'DNSJAKDd',
  10. genid: req => {
  11. return req.sessionID || uid(24);
  12. },
  13. name: 'SESSIONID', // 这里的name值得是cookie的name,默认cookie的name是:connect.sid
  14. cookie: {
  15. path: '/',
  16. httpOnly: true,
  17. maxAge: 1728e5,
  18. },
  19. store: new RedisStore({
  20. port,
  21. host,
  22. pass,
  23. }),
  24. resave: true,
  25. saveUninitialized: false,
  26. });
  27. };