Files
noctune-server/src/app.js
T

39 lines
931 B
JavaScript

import express from 'express';
import cors from 'cors';
import helmet from 'helmet';
import cookieParser from 'cookie-parser';
import morgan from 'morgan';
import routes from './routes/index.js';
const app = express();
app.use(
cors({
origin: process.env.CLIENT_URL || 'http://localhost:5173',
credentials: true,
})
);
app.use(
helmet({
crossOriginResourcePolicy: { policy: 'cross-origin' },
})
);
app.use(express.json({ limit: '2mb' }));
app.use(cookieParser());
app.use(morgan(process.env.NODE_ENV === 'production' ? 'combined' : 'dev'));
app.use('/uploads', express.static('uploads'));
app.use('/api', routes);
app.use((req, res) => {
res.status(404).json({ success: false, message: 'Route not found' });
});
app.use((err, req, res, next) => {
const status = err.status || 500;
res
.status(status)
.json({ success: false, message: err.message || 'Server error' });
});
export default app;