Deslogado ao atualizar o código

Olá, estou fazendo um trabalho pra faculdade e o minha aplicação consiste em um blog, só que sempre que faço algum tipo de alteração no código eu estou sendo “deslogado” e enviado de volta para a pagina de login/cadastro.

Segue o código:

route.js

 const express = require('express')
const router = express.Router()
const mysql = require('mysql')
const bcrypt = require('bcryptjs')
const session = require('express-session')
const { logginRequired } = require('../config/auth')

// conexão com o banco de dados
const database = mysql.createConnection({
    connectionLimit: 100,
    host: process.env.HOST,
    user: process.env.USER,
    password: process.env.PASSWORD,
    database: process.env.DB
})

database.connect((err) => {
    if (err) throw err

    console.log('Mysql connected')
})

// rota principal
router.get('/', (req, res) => res.render('home'))

// rota de cadastro
router.post('/register', (req, res) => {
    const { name, email, password } = req.body

    let errors = []

    if (!name || !email || !password) errors.push('Preencha todos os campos!')

    if (password.length < 5) errors.push('A senha precisa ter pelo menos 5 caracteres!')

    if (errors.length > 0) {
        req.flash('errors', errors)
        return res.redirect('/')
    }

    database.query("SELECT `email` FROM `users` WHERE `email`=?", [email], (err, result) => {
        if (result.length > 0) {
            errors.push('Usuario ja cadastrado!')
            req.flash('errors', errors)
            return res.redirect('/')
        }
    })

    database.query("INSERT INTO users SET name=?, email=?, password=?", [name, email, password], (err, result) => {
        if (err) throw err
        res.redirect('/')
    })
})

// rota de login
router.post('/login',  async (req, res) => {
    const { email, password } = req.body

    let errors = []

    if (email && password) {
        database.query('SELECT * FROM users WHERE email = ? AND password = ?', [email, password], (err, results) => {
            if (results.length > 0) {
                req.session.userID = results[0].id,
                    req.session.user = results[0],
                    //console.log(results[0].name)
                    res.redirect('/user')
            } else {
                errors.push('Usuario ou senha incorretos')
                req.flash('errors', errors)
                return res.redirect('/')
            }
        })
    } else {
        errors.push('Preencha todos os campos!')
        req.flash('errors', errors)
        return res.redirect('/')
    }

})

// rota de logout
router.get('/logout', (req, res) => {
    req.session.destroy()
    return res.redirect('/')
})

// rota do usuario
router.get('/user', logginRequired, (req, res) => {
    //console.log(req.session.user.id)
    res.render('userPage')
})

// rota de publicação get
router.get('/user/write', logginRequired, (req, res) => res.render('write'))

// rota de publicação post
router.post('/user/write', logginRequired, (req, res) => {
    const { title, status, body } = req.body
    const user_id = req.session.user.id
    if (title && status && body) {
        database.query("INSERT INTO posts SET title=?, status=?, body=?, user_id=?", [title, status, body, user_id], (err, results) => {
            if (err) throw err

            console.log(results[0])
            res.redirect('/user')
        })
    } else {
        errors.push('Preencha todos os campos!')
        req.flash('errors', errors)
        return res.redirect('/')
    }
})

module.exports = router

app.js

require('dotenv').config()

const express = require('express')
const session = require('express-session')
const flash = require('connect-flash')
const path = require('path')
const routes = require('./src/routes/routes')
const { globals } = require('./src/middleware/middleware')

const app = express()

app.use(express.urlencoded({ extended: true }));
app.use(express.json());

app.set('views', path.resolve(__dirname, 'src', 'views'));
app.set('view engine', 'ejs');


app.use(express.static(path.join(__dirname, '/public')))

app.use(session({
    secret: process.env.SECRET,
    resave: false,
    saveUninitialized: false,
    cookie: { maxAge: 24 * 60 * 60 * 1000 }
}))

app.use(flash())

app.use(globals)
app.use(routes)

const PORT = process.env.PORT || 3001
app.listen(PORT, () => console.log(`Running on port ${PORT}`))

auth.js

exports.logginRequired = (req, res, next) => {
    if(!req.session.user) {
        req.flash('errors', 'Você precisa estar logado para estrar nessa página!')
        res.redirect('/')
        return 
    }
    next()
}

Não trabalho com node no back, mas geralmente quando alteramos o código o servidor recarrega. Daí, num sistema de login, vamos precisar logar denovo. Não é nenhum bug

salva o login no localStorage/sessionStorage e aí vc faz o check pra ver se X dado está ali, se estiver vc deixa o cara logado, senão vc envia pra pagina de login

Deu certo, obrigado!