const express = require('express'); const {json} = require("body-parser"); const cors = require('cors'); const app = express(); const port = process.env.PORT || 5000; app.use(cors({ allowedHeaders: ['Authorization', 'Content-Type'] // Add 'Authorization' to the list of allowed headers })); app.use(json()); const { usersDB, departmentsDB, backupSchemesDB, ceoDB, adminDB } = require('./db/jsonDatabaseManager'); app.set('usersDB', usersDB); app.set('departmentsDB', departmentsDB); app.set('backupSchemesDB', backupSchemesDB); app.set('ceoDB', ceoDB); app.set('adminDB', adminDB); const checkJson = require('./middlewares/checkJson'); const apiKeyValidation = require('./middlewares/apiKeyValidation'); app.use(apiKeyValidation) app.use(checkJson) const usersRouter = require('./routes/users'); const adminRouter = require('./routes/admin'); const ceoRouter = require('./routes/ceo'); const backupSchemesRouter = require('./routes/backup_schemes'); app.use('/users', usersRouter); app.use('/admin', adminRouter); app.use('/ceo', ceoRouter); app.use('/backup_schemes', backupSchemesRouter); app.listen(port, () => { console.log(`Server running on http://localhost:${port}`); }); // Graceful shutdown function function gracefulShutdown() { console.log('\nShutting down!'); process.exit(0); } process.on('SIGTERM', gracefulShutdown); process.on('SIGINT', gracefulShutdown);