Skip to content
Agustin Fernandez edited this page Jun 25, 2023 · 1 revision

Ruta "/echo"

Esta es una ruta modelo para poder trabajar con monoIntegrator. Estas no tienen nada diferene de ExpressJS, ya que estan basado en este. Pero tiene una estructura recomendada para poder trabajar.

Parámetros de entrada

No se requieren parámetros adicionales en la URL de la solicitud.

Implementación

La función echo se encarga de obtener la información de la solicitud y devuelve una respuesta JSON con los detalles relevantes. Si ocurre un error, se registra un mensaje de error y se devuelve una respuesta con estado 500.

const echo = (req, res) => {
  const { id, ip, uri, method } = reqInfo(req);

  try {
    res.status(200).json({ id, ip, uri, method });
  } catch (err) {
    log(
      "error",
      `Existe un inconveniente - ${id} :: ${ip} :: ${uri} :: ${method} :: ${err}`,
      "Manager"
    );
    res.status(500).json({ msg: "Existe un inconveniente en la solicitud", id });
  }
};

La ruta se registra utilizando router.all para aceptar cualquier método HTTP y se asigna la función echo como controlador.

router.all("/echo", echo);

Finalmente, se exporta el módulo router para su uso en otras partes de la aplicación.

module.exports = router;

Ejemplo de respuesta exitosa

{
  "id": "<valor_id>",
  "ip": "<valor_ip>",
  "uri": "/echo",
  "method": "<método_http>"
}

Ejemplo de respuesta de error

{
  "msg": "Existe un inconveniente en la solicitud",
  "id": "<valor_UUID>"
}