FEAT: Update de configurações do CORs, e a atualização da versão do CORs.

This commit is contained in:
Gabriel Amancio 2026-02-02 10:28:20 -03:00
parent fb5fef3fea
commit ab836654f7
3 changed files with 37 additions and 20 deletions

14
package-lock.json generated
View File

@ -10,7 +10,7 @@
"license": "ISC", "license": "ISC",
"dependencies": { "dependencies": {
"axios": "^1.6.0", "axios": "^1.6.0",
"cors": "^2.8.5", "cors": "^2.8.6",
"dotenv": "^17.2.3", "dotenv": "^17.2.3",
"express": "^5.1.0", "express": "^5.1.0",
"node-cron": "^4.2.1", "node-cron": "^4.2.1",
@ -349,9 +349,9 @@
} }
}, },
"node_modules/cors": { "node_modules/cors": {
"version": "2.8.5", "version": "2.8.6",
"resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.6.tgz",
"integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", "integrity": "sha512-tJtZBBHA6vjIAaF6EnIaq6laBBP9aq/Y3ouVJjEfoHbRBcHBAHYcMh/w8LDrk2PvIMMq8gmopa5D4V8RmbrxGw==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"object-assign": "^4", "object-assign": "^4",
@ -359,6 +359,10 @@
}, },
"engines": { "engines": {
"node": ">= 0.10" "node": ">= 0.10"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/express"
} }
}, },
"node_modules/cross-env": { "node_modules/cross-env": {
@ -1222,7 +1226,6 @@
"resolved": "https://registry.npmjs.org/pg/-/pg-8.16.3.tgz", "resolved": "https://registry.npmjs.org/pg/-/pg-8.16.3.tgz",
"integrity": "sha512-enxc1h0jA/aq5oSDMvqyW3q89ra6XIIDZgCX9vkMrnz5DFTw/Ny3Li2lFQ+pt3L6MCgm/5o2o8HW9hiJji+xvw==", "integrity": "sha512-enxc1h0jA/aq5oSDMvqyW3q89ra6XIIDZgCX9vkMrnz5DFTw/Ny3Li2lFQ+pt3L6MCgm/5o2o8HW9hiJji+xvw==",
"license": "MIT", "license": "MIT",
"peer": true,
"dependencies": { "dependencies": {
"pg-connection-string": "^2.9.1", "pg-connection-string": "^2.9.1",
"pg-pool": "^3.10.1", "pg-pool": "^3.10.1",
@ -1844,7 +1847,6 @@
"resolved": "https://registry.npmjs.org/winston/-/winston-3.18.3.tgz", "resolved": "https://registry.npmjs.org/winston/-/winston-3.18.3.tgz",
"integrity": "sha512-NoBZauFNNWENgsnC9YpgyYwOVrl2m58PpQ8lNHjV3kosGs7KJ7Npk9pCUE+WJlawVSe8mykWDKWFSVfs3QO9ww==", "integrity": "sha512-NoBZauFNNWENgsnC9YpgyYwOVrl2m58PpQ8lNHjV3kosGs7KJ7Npk9pCUE+WJlawVSe8mykWDKWFSVfs3QO9ww==",
"license": "MIT", "license": "MIT",
"peer": true,
"dependencies": { "dependencies": {
"@colors/colors": "^1.6.0", "@colors/colors": "^1.6.0",
"@dabh/diagnostics": "^2.0.8", "@dabh/diagnostics": "^2.0.8",

View File

@ -19,7 +19,7 @@
"description": "A robust and scalable Node.js project starter based on Clean Architecture principles.", "description": "A robust and scalable Node.js project starter based on Clean Architecture principles.",
"dependencies": { "dependencies": {
"axios": "^1.6.0", "axios": "^1.6.0",
"cors": "^2.8.5", "cors": "^2.8.6",
"dotenv": "^17.2.3", "dotenv": "^17.2.3",
"express": "^5.1.0", "express": "^5.1.0",
"node-cron": "^4.2.1", "node-cron": "^4.2.1",

View File

@ -8,29 +8,44 @@ const routes = require('./routes/routes.js');
const logger = require('./shared/utils/logger.js'); const logger = require('./shared/utils/logger.js');
const app = express(); const app = express();
app.set('trust proxy', 1); // Confia no primeiro proxy reverso na frente da aplicação app.set('trust proxy', 1);
const PORT = process.env.PORT || 3000; const PORT = process.env.PORT || 3000;
app.use(cors()); /**
* CORS
*/
app.use(cors({
origin: 'https://sothis.com.br',
methods: ['GET', 'POST', 'PUT', 'DELETE', 'OPTIONS'],
allowedHeaders: ['Content-Type', 'Authorization']
}));
app.use(express.json()); app.use(express.json());
// Logar todas as requisições /**
* Logger
*/
app.use((req, res, next) => { app.use((req, res, next) => {
logger.info(`Requisição recebida: ${req.method} ${req.originalUrl} - IP: ${req.ip}`); logger.info(`Requisição recebida: ${req.method} ${req.originalUrl} - IP: ${req.ip}`);
next(); next();
}); });
/**
* Rotas
*/
app.use('/api', routes); app.use('/api', routes);
// Tratamento de erros /**
* Tratamento de erros
*/
app.use((err, req, res, next) => { app.use((err, req, res, next) => {
logger.error(`Erro não tratado: ${err.message}`, { logger.error(`Erro não tratado: ${err.message}`, {
stack: err.stack, stack: err.stack,
url: req.originalUrl, url: req.originalUrl,
method: req.method, method: req.method,
ip: req.ip ip: req.ip
}); });
res.status(500).send('Ocorreu um erro interno no servidor.'); res.status(500).send('Ocorreu um erro interno no servidor.');
}); });
app.listen(PORT, () => { app.listen(PORT, () => {