87 lines
2.8 KiB
JavaScript
87 lines
2.8 KiB
JavaScript
const express = require('express');
|
|
const path = require('path');
|
|
const morgan = require('morgan');
|
|
const mysql = require('mysql');
|
|
const cloud_file = require('express-fileupload');
|
|
const myConecction = require('express-myconnection');
|
|
const cors_origins = require('cors');
|
|
//inicio de sessiones
|
|
const session = require('express-session');
|
|
//const jwt = require('jwt');
|
|
//const pool = require('./db.js');
|
|
|
|
global.config = require('./config.js');
|
|
var puerto = global.config.server.port;
|
|
|
|
const app = express();
|
|
//importando rutas
|
|
const clientesRutas = require('./rutas/rt_clientes');
|
|
const productosRutas = require('./rutas/rt_items');
|
|
const generalesRutas = require('./rutas/rt_Generales');
|
|
const cloud_rutas = require('./rutas/rt_cloud');
|
|
const app_restaurant = require('./rutas/rt_apps');
|
|
const app_arduino = require('./rutas/rt_arduino');
|
|
|
|
//configuraciones
|
|
app.set('port',process.env.PORT||puerto);
|
|
app.set('view engine','ejs');
|
|
app.set('views',path.join(__dirname, 'views'));
|
|
//app.set('vistas',path.join(__dirname, 'vistas'));
|
|
app.locals = global.config;
|
|
//app.locals.pretty;//true minificado//false minificado
|
|
|
|
//***** CONTROL DE CORDS ******/
|
|
app.use(cors_origins({origin:global.config.origin.any}));
|
|
//*****inicio de sessiones*****//
|
|
app.use(session({
|
|
secret: global.config.sessionStorage.secretSession,//llave para cifrar
|
|
resave: false,//no se guarde cada vez que se hace un cambio
|
|
saveUninitialized: true,//guardar sesion aunque no haya datos
|
|
cookie: { secure: global.config.sessionStorage.cookie }//true solo se envia por https
|
|
}));
|
|
|
|
//middlewares
|
|
app.use(express.static(__dirname+'/public'));//para usar la carpeta public *js*css*img
|
|
app.use(morgan('dev'));
|
|
app.use(myConecction(mysql,{//conexion bd
|
|
host:global.config.db.host,
|
|
user: global.config.db.user,
|
|
password:global.config.db.pswd,
|
|
port:global.config.db.port,
|
|
database:global.config.db.db_a
|
|
},'pool'));
|
|
//cuando reciba dato desde req body
|
|
app.use(express.json({limit: '25mb'}));
|
|
app.use(express.urlencoded({limit:'25mb',extended:false}));
|
|
//
|
|
//app.use(cloud_file);
|
|
app.use(cloud_file({
|
|
limits: { fileSize: 50000 * 1024 * 1024 },
|
|
}));
|
|
|
|
//rutas
|
|
app.use('/', clientesRutas);
|
|
app.use('/', productosRutas);
|
|
app.use('/', generalesRutas);
|
|
app.use('/', cloud_rutas);
|
|
app.use('/', app_restaurant);
|
|
app.use('/', app_arduino);
|
|
|
|
//prueba de json directa
|
|
app.get('/pruebaJson',function(req,res){
|
|
req.session.acount = req.session.acount ? req.session.acount + 1 : 1;
|
|
res.json([
|
|
{nombre:"Tarea1",detalle:"programacion"},
|
|
{nombre:"Tarea2",detalle:"Android Json"},
|
|
{ejecusion:req.session.acount,"id":req.sessionID},
|
|
]);
|
|
});
|
|
|
|
//archivos staticos
|
|
app.use(express.static(path.join(__dirname, 'public')));
|
|
|
|
//inicia servidor
|
|
app.listen(app.get('port'),() =>{
|
|
console.log('Servidor Activo: App SIGMA Pedidos -> Puerto: '+puerto +' -> '+new Date().toLocaleString());
|
|
});
|