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

245
Vistas
Ejecutar la misma consulta da el error "FailedToParse" en nodejs

La estructura de la base de datos es;

 { "key" : "test" } { "key" : "test" } { "key" : "test" } { "key" : "test" }

En mongoshell la consulta,

 db.collectionName.find({}, {key: 1, _id: 0})

enumera los documentos.

Sin embargo, cuando ejecuto la misma consulta en nodejs me da un error como;

 { "name": "MongoError", "message": "Failed to parse: comment: 1. 'key' field must be of BSON type string.", "ok": 0, "errmsg": "Failed to parse: comment: 1. 'key' field must be of BSON type string.", "code": 9, "codeName": "FailedToParse" }

no entiendo cual puede ser el problema?

Soy consciente de que la pregunta no tiene sentido, sin embargo, sin sentido, esto es lo que tengo. ¿Se trata de versiones de mongo o qué?

editar: tiene razón al escribir el código Node.js, así que aquí está, la consulta dentro de una llamada async.series;

 async.series([ function(callback){ db.collection("collectionName").find({}, {key: 1, _id: 0}).toArray(function(err, result){ if(err){ callback(err); } else{ callback(null, result); } }); } ])
over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

No sé por qué incluyó la línea de shell mongo que funcionó pero no incluyó la línea Node que falló, lo que sería mucho más relevante aquí.

En cualquier caso, el controlador nativo de Mongo para Node (que supongo que está usando aquí) funciona de una manera completamente diferente al shell de Mongo, así que no espere que funcione igual.

Mongo shell ejecuta todo secuencialmente. En Node, debe usar devoluciones de llamada o promesas para el control de flujo que no hace en el shell de Mongo. También hay algunas diferencias en la forma de acceder a las colecciones. En el shell de Mongo, generalmente usa db.collectionName . También en el shell de Mongo tiene algunas cosas predefinidas, como funciones relacionadas con los identificadores de objetos, por ejemplo. Y finalmente, Mongo usa BSON para datos y en Node usa literales de objetos de JavaScript (más como JSON pero menos estricto). Node usa V8 más funcionalidad adicional y Mongo shell usa SpiderMonkey, sin ninguna funcionalidad disponible en Node. Todo tiene consecuencias en diferencias sutiles.

No incluyó la línea de nodo que falló, por lo que nadie podrá reparar esa línea. Pero ciertamente necesita echarle un vistazo y ver si está siguiendo la documentación de cualquier controlador Mongo u ODM que esté usando.

over 4 years ago · Santiago Trujillo 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