session-file-store 删除过期的会话文件

Nis*_*Nis 5 session-cookies node.js express express-session

我正在使用 session-file-store 来维护我的 Node-Express 应用程序中的会话。

session-file-store 为每个会话生成一个新文件。随着时间的推移,这将在服务器上创建大量文件。

会话到期后是否有任何选项/方法可以自动删除文件?

这是我为此使用的代码的一部分 -

.
.
const session = require('express-session');
const FileStore = require('session-file-store')(session);
.
.
app.use(session({
    genid: (req) => {
        return uuid() // use UUIDs for session IDs
    },
    store: new FileStore(),
    secret: MY_SECRET,
    resave: false,
    saveUninitialized: true,
    cookie: { maxAge : SESSION_COOKIE_TIMEOUT }
}));
.
.
Run Code Online (Sandbox Code Playgroud)

这是由 session-file-store 生成的示例文件 -

{"cookie":{"originalMaxAge":59999,"expires":"2019-03-27T03:28:21.597Z","httpOnly":true,"path":"/"},"__lastAccess":1553657241598}
Run Code Online (Sandbox Code Playgroud)

Mup*_*pet 2

reapInterval将从服务器中清除所有过期的 cookie,例如将清除设置为每 10 秒一次:

var fileStoreOptions = {
  path: "./sessions",
  reapInterval: 10,
};```
Run Code Online (Sandbox Code Playgroud)