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

108
Vistas
Node.js Express muestra un archivo Json con Class Method

Acabo de comenzar con node.js y express y estaba tratando de mostrar un archivo json que contiene una matriz de 3 objetos con un método de clase

Aquí está la estructura de la clase.

 const fs = require('fs') class GrupoArchivo { constructor(ruta) { this.ruta = ruta this.productos = [] } _leer() { return fs.promises.readFile(this.ruta, 'utf-8') .then(texto => { const productosComoArray = JSON.parse(texto) this.productos = productosComoArray }) } async obtenerTodas() { await this._leer() return [...this.productos] } } module.exports = GrupoArchivo

Y aquí está el archivo Js con el servidor express

Con el segundo "app.get" estaba tratando de obtener el método que muestra el archivo json sin suerte

 const express = require("express"); const GrupoArchivo = require('./GrupoArchivo.js') const path = require("path"); const app = express(); app.get("/", (req, res)=>{ res.sendFile(path.join(__dirname + "/index.html")) }) const grupo = new GrupoArchivo('./productos.json') app.get("/productos", (req, res)=> res.json(grupo.obtenerTodas()) //this returned me an {} ) app.listen(8080, ()=>{ console.log("server listening on port", 8080) })
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Todas las funciones async devuelven una promesa, por lo que cuando la llama, debe usar await o .then() para obtener el valor resuelto de esa promesa. Puede agregar async y await así:

 app.get("/productos", async (req, res) => { try { res.json(await grupo.obtenerTodas()); } catch(e) { console.log(e); res.sendStatus(500); } });

Tenga en cuenta que esto también agrega el manejo de errores para que pueda detectar cualquier error de grupo.obtenerTodas() .

about 4 years ago · Juan Pablo Isaza Denunciar
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