Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

188
Views
Error al intentar buscar registros que coincidan con los criterios con MongoDB

Estoy tomando un curso de capacitación, en Udemy, y ya tenía un código backend escrito, ya que el curso es puramente sobre desarrollo frontend. Utiliza una base de datos MongoDB muy simple que creé. Determiné que MongoDB versión 4.0.10 está instalado en mi computadora, en caso de que sea relevante. Al intentar realizar una consulta de registros coincidentes, aparece el siguiente error:

UnhandledPromiseRejectionWarning: MongoError: los nombres de campo de FieldPath pueden no comenzar con '$'. en MessageStream.messageHandler (I:\DEV\Training\React For the Rest of Us\backend-api\node_modules\mongodb\lib\cmap\connection.js:268:20) en MessageStream.emit (events.js:315: 20) en processIncomingData (I:\DEV\Training\React For the Rest of Us\backend-api\node_modules\mongodb\lib\cmap\message_stream.js:144:12) en MessageStream._write (I:\DEV\Training \React For the Rest of Us\backend-api\node_modules\mongodb\lib\cmap\message_stream.js:42:5) en writeOrBuffer (internal/streams/writable.js:358:12) en MessageStream.Writable.write ( interno/streams/writable.js:303:10)
en TLSSocket.ondata (interno/streams/readable.js:719:22) en TLSSocket.emit (events.js:315:20) en addChunk (internal/streams/readable.js:309:12) en readableAddChunk (interno/ streams/readable.js:284:9) (nodo:51960) UnhandledPromiseRejectionWarning: Rechazo de promesa no controlado. 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) Después de buscar en el código de back-end, encontré el siguiente código que se usa para realizar la consulta/búsqueda, y noté que hay símbolos $ en varios lugares.

 Post.search = function(searchTerm) { return new Promise(async (resolve, reject) => { if (typeof(searchTerm) == "string") { let posts = await Post.reusablePostQuery([ {$match: {$text: {$search: searchTerm}}}, {$sort: {score: {$meta: "textScore"}}} ]) resolve(posts) } else { reject() } }) }

¿Qué es exactamente lo que está mal y cómo lo soluciono?

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Idéntico error aquí. Buscar desde reaccionar usando axios en la aplicación principal, muy simple (se supone que debe ser). Es indicativo de que, en mi caso, cuando intento buscar "abrir modo de búsqueda" desde reaccionar, el servidor mongodb se bloquea con el error mencionado:
f:\PrgsReact\SimplePost\backend-api\node_modules\mongodb\lib\cmap\connection.js:268 callback(nuevo MongoError(documento));
MongoError: los nombres de campo de FieldPath pueden no comenzar con '$'.
etc..
Intenté cambiar la versión npm de mongodb y axios, entre otras cosas. Gracias.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!