私はエクスプレスセッションを使用する単純なアプリケーションを持っています。ここに私がセッションを開始する私のエントリースクリプトがあります。`req.session.secret`はexpress-sessionを使用するルートで定義されていません
export const app = express();
export const server = Server(app);
app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());
app.use(cookieParser());
app.use(session({
secret: "changed to nonsense string for this question",
resave: true,
saveUninitialized: true,
cookie: { maxAge: 60000 }
}));
app.use('/api/v1/auth', require('./users'));
documents of express-sessionによると、私はこれはreq.sessionを経由してアクセスすることができるはずです。私は1つのルート内でjsonトークンを作成するための秘密鍵を取得したい。私がしていることは次のとおりです。
export const routes = Router();
routes.post('/login', function (req, res, next) {
// ...
const token = jwt.sign(user, req.session.secret, { expiresIn: '5m' });
});
export default routes;
しかし、一貫してreq.session.secret
は定義されていません。私は間違って何をしていますか?ルート内でセッションシークレットにアクセスするにはどうすればよいですか?