Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

223
Vistas
Cómo pausar y redirigir en express

Estoy escribiendo un código en express js que publicará datos y creará un registro. El registro tarda de 1 a 3 segundos en crearse, no estoy seguro de cuánto tiempo llevará. ¿Hay alguna forma de redirigir a ese registro después de crearlo?

Aquí está mi código actual.

 router.post("/recipePost", async (req, res) => { var body = req.body; var axios = require("axios"); var data = JSON.stringify({ "name":"john" }); var config = { method: "post", url: "https://myEndpoint.com", headers: { "Content-Type": "application/json", }, data: data, }; try { var resData = await axios(config); navigateToRec(resData.data.response.meta.id); } catch (err) { console.log("err"); } });

y mi método de navegación es el siguiente.

 navigateToRec = async (recId) => { console.log("recId" + recId); const resp = await axios.get( `https://myEndpoint.com/${recId}` ); try { res.send({ redirect: "/recipeDetail/" + resData.data.response.meta.id }); } catch (err) { this.navigateToRec(rec); } };

Básicamente, intentar llamar al mismo método hasta que la creación del registro sea un éxito. Pero aquí console.log("recId" + recId); está imprimiendo el Id creado. Por favor, hágame saber dónde me estoy equivocando y cómo puedo solucionarlo.

aquí está el error

(nodo: 83576) UnhandledPromiseRejectionWarning: Error: la solicitud falló con el código de estado 404 en createError (/Users/rkeerthi/Desktop/Node js/yext-site/node_modules/axios/lib/core/createError.js:16:15) en liquidación (/Users/rkeerthi/Desktop/Node js/yext-site/node_modules/axios/lib/core/settle.js:17:12) en IncomingMessage.handleStreamEnd (/Users/rkeerthi/Desktop/Node js/yext-site/ node_modules/axios/lib/adapters/http.js:293:11) en IncomingMessage.emit (events.js:412:35) en endReadableNT (interno/streams/readable.js:1317:12) en processTicksAndRejections (interno/proceso /task_queues.js:82:21) (Use node --trace-warnings ... para mostrar dónde se creó la advertencia) (node:83576) UnhandledPromiseRejectionWarning: Rechazo de promesa no manejado. Este error se originó al lanzar dentro de una función asíncrona sin un bloque catch o al rechazar una promesa que no se manejó con .catch(). Para finalizar el proceso del nodo en caso de rechazo de la promesa no controlada, utilice la marca CLI --unhandled-rejections=strict (consulte https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode ). (Id. de rechazo: 2) (nodo: 83576) [DEP0018] Advertencia de desuso: los rechazos de promesa no controlados están en desuso. En el futuro, los rechazos de promesas que no se controlen terminarán el proceso de Node.js con un código de salida distinto de cero.

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda