#4 Re-estructuracion modulos, cambio de puerto, instalacion de paquetes,...

#4 Re-estructuracion modulos, cambio de puerto, instalacion de paquetes, implementacion autorizacion basica node express
parent 0ae3cde5
const {parameters} = require("../config/parameters");
const express = require("express");
const basicAuth = require("express-basic-auth");
const userAgentValidator = require("express-useragent");
const server = express();
/**
* Autorizacion basica permitida para la api generada
*/
server.use(basicAuth({
authorizer : myAuthorizer,
unauthorizedResponse: getUnauthorizedResponse
}))
function myAuthorizer(username, password) {
const userMatches = basicAuth.safeCompare(username, parameters.basicAuth.USER)
const passwordMatches = basicAuth.safeCompare(password, parameters.basicAuth.PASS)
return userMatches & passwordMatches
}
function getUnauthorizedResponse(req) {
return req.auth
? (`Las credenciales ${req.auth.user}:${req.auth.password} no son válidas.`)
: 'No se ingresaron credenciales'
}
/**
* Se activa la utilizacion de json en express para esta instancia(Response)
*/
server.use(express.json());
/**
* Se activa la utilizacion de useragent en express para esta instancia(Response)
*/
server.use(userAgentValidator.express());
/**
* Definicion de funciones asociadas a endpoints
*/
function listenPort (port) {
server.listen(port, () => {
console.log(`Escuchando en puerto ${port}...`);
});
}
module.exports.server = server ;
module.exports.listenPort = listenPort;
\ No newline at end of file
/**
* Objeto de ayuda para respuestas http
*/
const constants = {
HTTP_STATUS_CODE : {
OK: 200,
BAD_REQUEST: 400,
NOT_FOUND: 404,
ERROR: 500,
},
/**
* Objeto de ayuda para secciones html campaña
*/
HTML_SECTIONS : {
HEAD: 1,
BODY: 2,
FOOTER: 3,
},
/**
* Objeto de ayuda para secciones html campaña
*/
ACTIVE_STATUS : {
ACTIVE: 1,
NON_ACTIVE: 2,
},
/**
* Objeto de ayuda para secciones html campaña
*/
DELETE_STATUS : {
DELETE: 1,
NON_DELETE: 0,
},
/**
* Objeto de ayuda para disposicion de contenido
*/
CONTENT_DEVICE_DISPOSITION : {
MOBILE: 1,
DESKTOP: 2,
BOTH: 3,
},
CONTENT_TYPE : {
TEXT: 1,
IMAGE: 2,
VIDEO: 3,
}
}
module.exports.constants = constants;
\ No newline at end of file
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment