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

192
Views
¿Cómo escuchar campos específicos en la base de datos mongodb por changestream?

Tengo una colección en los usuarios de mi base de datos mongodb y cada usuario contiene publicaciones de nombre de campo. Quiero obtener datos de cambios en tiempo real de ese campo de publicaciones cuando un usuario agrega una nueva publicación o actualiza una publicación existente y toma el valor actualizado del servidor de socket y lo envía de vuelta a la interfaz.

los documentos de un solo usuario se ven así

 [ { "_id" : "613fb31a52ef63541d036fcd", "posts"["613fb31a52ef63541d036fdf", "613fb31a52ef63541d036ff1"], "mobiles" : [ "01751150412"], "languages" : [ "English", "Bangla"], } ]

Al principio, probé con const userChangeStream = connection.collection("users").watch()

eso me da todos los campos de la colección de usuarios que ni siquiera se cambiaron.

Luego seguí esta pregunta de stackoverflow y actualicé mi código

 const filter = [ { $match: { $and: [ { "updateDescription.updatedFields.posts": { $exists: true } }, { operationType: "update" } ] } } ] const options = { fullDocument: 'updateLookup' }; const postsChangeStream = connection.collection("users").watch(filter,options); postsChangeStream.on("change", (change) => { console.log('change on', change); });

Ahora no obtengo ninguna respuesta al agregar en ese campo de publicaciones .

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