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

225
Vistas
Problema relacionado con las funciones asíncronas: la espera solo es válida en funciones asíncronas

En un archivo llamado getData.js, escribí el siguiente código

 module.exports = async function (page, id) { const options = { ... }; axios .request(options) .then((response) => { myData = JSON.stringify(response.data); return myData; }) .catch((error) => { console.error(error); }); };

Ahora, en mi archivo index.js principal, importé el módulo anterior y luego tengo este fragmento,

 const server = http.createServer((req, res) => { res.writeHead(200, { "Content-Type": "application/json" }); let finalData = await getData(myPage, myID); res.end(finalData); });

Cuando ejecuto este nodo se bloquea y aparece este error

SyntaxError: await solo es válido en funciones asíncronas y los cuerpos de módulos de nivel superior

¿Cómo hago que mi código funcione? Pensé en usar async-await porque la respuesta. Los datos son muy grandes, pero claramente no entiendo completamente las funciones de async-await. En el módulo externo, si trato de devolver myData fuera del bloque .then y tampoco uso async-await, entonces obtengo datos finales indefinidos.

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