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

190
Vistas
Recibo un error al crear una API con los datos que saqué de la base de datos

Quiero hacer una página ".json" con los datos que saqué. código

 app.get("/:user_id", async (req, res) => { let items = []; await msgData.find({ userId: req.params.user_id }).then((e) => { e.map((e) => { for (const [key, value] of e.msgChannelsMsgCount.entries()) { items.push({ guildId: e.guildId, channel: key, msgCount: value }); } }); }); res.write(JSON.parse(items)); });

esquema de mangosta

 import { mongoose } from "./../../dist/tools.js"; const { model, Schema } = mongoose; const schema = new Schema({ userId: String, guildId: String, msgCount: Number, msgChannelsMsgCount: Map, }); const msgdatas = model("msgdatas", schema); export default msgdatas;

Salida Mongo

 _id:626f1c8e9abf489a1bed71c1 userId:"337800833888681987" guildId:"959946061915492373" msgCount:30 msgChannelsMsgCount:Object 959946062095851523:7 970510925205475429:19 965236713314213889:1 __v:0

indefinido:1 [objeto Objeto],[objeto Objeto],[objeto Objeto],[objeto Objeto] ^

SyntaxError: Token o inesperado en JSON en la posición 1 en JSON.parse () en file:///C:/Users/imkys/OneDrive/Masa%C3%BCst%C3%BC/app/server/app.js:14 :18 en processTicksAndRejections (nodo:internal/process/task_queues:96:5)
La aplicación [nodemon] se bloqueó: esperando cambios en el archivo antes de comenzar...

about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

res.write(JSON.parse(items)); para res.write(items); funcionaría bien.

about 4 years ago · Juan Pablo Isaza Denunciar

0

probar:

 app.get("/:user_id", async (req, res) => { let items = []; await msgData.find({ userId: req.params.user_id }).then((e) => { e.map((e) => { for (const [key, value] of e.msgChannelsMsgCount.entries()) { items.push({ guildId: e.guildId, channel: key, msgCount: value }); } }); }); res.write(JSON.stringify(items, null, ' ')); });
about 4 years ago · Juan Pablo Isaza Denunciar

0

¡Bienvenido a Stack Overflow!

Cuando usa JSON.parse(<input>) , lee la entrada de cadena y luego convierte esa cadena en formato de objeto JS.

Como ejemplo:

 { "body": 5 } //becomes { body: 5 }

lo que te permite usar el cuerpo de los objetos como object.body

Para enviar datos json, debe usar el método expreso incorporado res.json(items)

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