При изменении сессии на fastify, она не изменяется глобально
Я хочу создать сессию аутентификации в fastify и установить для него значение false, затем после выполнения некоторого первого метода некоторого класса сеанс изменяется на true, но проблема в том, что сеанс изменяется только в первом методе и изменения не видны в других методах, кроме первого, когда я вывожу в консоль в первом методе свою сессию, я вижу измененную версию, т. е. значение равно true. Далее появляется второй метод,в котором, по моей задумке, должно выводить в консоль уже измененную сессию аутентификации на true, но возникает проблема, что сеанс не изменился и выводит в консоль самое первое заданное мной значение, т.е false вместо true, методы написаны на TypeScript.
Вот пример кода
это index.ts
const fastifySession = require('@fastify/session');
const fastifyCookie = require('@fastify/cookie');
dotenv.config();
const server = require("fastify")();
server.register(fastifyCookie, {secure: false});
server.register(fastifySession, {secret: 'a secret with minimum length of 32 characters'});
server.addHook('preHandler', (req:any, reply:any, next:any) => {
req.session.auth = false;
next()
});
это первый метод
async login(req: any, reply: any) {
req.session.set('auth', true)
req.session.save()
console.log(req.session.auth)
return req.session.auth
}
это второй метод
async getAuth(req: any, reply: any) {
console.log(req.session.auth)
reply.send(JSON.stringify(req.session.auth))
}