87 lines
3.3 KiB
TypeScript
87 lines
3.3 KiB
TypeScript
import { env } from "#config/env/index.js"
|
|
import { Router } from "express"
|
|
import { ClientRequest, IncomingMessage } from "http"
|
|
import { createProxyMiddleware } from "http-proxy-middleware"
|
|
import { Request } from "express"
|
|
|
|
export const connectionsRoutes = Router()
|
|
|
|
const CONNECTIONS_URL = env.CONNECTIONS_URL// TODO: Meter al ENV
|
|
//const CONNECTIONS_URL = "http://sf-nfc-server.savefamilygps.net"
|
|
|
|
//console.log("CONNURL: ", CONNECTIONS_URL)
|
|
connectionsRoutes.use("", createProxyMiddleware({
|
|
target: CONNECTIONS_URL,
|
|
changeOrigin: true,
|
|
pathRewrite: {
|
|
'^/': "/simconnections/"
|
|
},
|
|
on: {
|
|
proxyReq: (proxyReq: ClientRequest, req: Request) => {
|
|
const protocol = req.protocol;
|
|
const host = req.get('host');
|
|
const originalFullUrl = `${protocol}://${host}${req.originalUrl}`;
|
|
const destinationFullUrl = `${CONNECTIONS_URL}${proxyReq.path}`;
|
|
/*
|
|
constnsole.log('──────────────────────────────────────────────────');
|
|
console.log(`[PROXY_DEBUG]`);
|
|
console.log(` ENTRADA: ${originalFullUrl}`);
|
|
console.log(` MÉTODO : ${req.method}`);
|
|
console.log(` DESTINO: ${destinationFullUrl}`);
|
|
console.log('──────────────────────────────────────────────────');
|
|
*/
|
|
console.log(`[Proxy Req]: ${req.method} ${req.url} -> ${proxyReq.path}`);
|
|
},
|
|
proxyRes: (proxyRes, req, res) => {
|
|
console.log(`[Proxy Res] Status: ${proxyRes.statusCode} desde ${req.url}`);
|
|
},
|
|
error: (err, req, res) => {
|
|
console.error('[Proxy Error]:', err);
|
|
|
|
// Validamos que 'res' tenga el método 'status' (típico de Express Response)
|
|
if ('status' in res) {
|
|
//@ts-ignore
|
|
res.status(500).json({ message: 'Error interno en el Gateway' });
|
|
}
|
|
},
|
|
}
|
|
}))
|
|
|
|
|
|
|
|
// Rutas
|
|
/**
|
|
connectionsRoutes.post('/simconnections/alai/preactivate',);
|
|
connectionsRoutes.get('/simconnections/alai/pause',);
|
|
connectionsRoutes.post('/simconnections/alai/terminate',);
|
|
connectionsRoutes.get('/simconnections/alai/pauseByPhone',);
|
|
connectionsRoutes.get('/simconnections/alai/active',);
|
|
connectionsRoutes.get('/simconnections/alai/change_orderid',);
|
|
connectionsRoutes.get('/simconnections/alai/select',);
|
|
connectionsRoutes.get('/simconnections/alai/select-iccid',);
|
|
connectionsRoutes.get('/simconnections/alai/selectFromDb',);
|
|
connectionsRoutes.get('/simconnections/alai/selectPage',);
|
|
connectionsRoutes.post('/simconnections/alai/schedulePause',);
|
|
connectionsRoutes.get('/simconnections/shopify/getbyWP',);
|
|
connectionsRoutes.get('/simconnections/shopify/getbyWPS',);
|
|
|
|
///
|
|
|
|
connectionsRoutes.get('/simconnections/sim/associate',);
|
|
connectionsRoutes.post('/simconnections/sim/search',);
|
|
connectionsRoutes.post('/simconnections/sim/historic',);
|
|
connectionsRoutes.post('/simconnections/sim/update',);
|
|
|
|
///
|
|
|
|
connectionsRoutes.post('/simconnections/nos/activate',);
|
|
connectionsRoutes.get('/simconnections/nos/select',);
|
|
connectionsRoutes.get('/simconnections/nos/selectPage',);
|
|
|
|
//Unificación
|
|
connectionsRoutes.post('/simconnections/sim/active',); // True false
|
|
connectionsRoutes.patch('/simconnections/sim/pause',);
|
|
connectionsRoutes.get('/simconnections/sim/select',);
|
|
connectionsRoutes.get('/simconnections/sim/select-phone',);
|
|
**/
|