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

292
Views
No se puede obtener un campo específico de Mongodb usando .find () Synatx (novato)

Soy newbee. Aquí está mi código. Básicamente, estoy almacenando mi jwt en Mongo DB y se está almacenando correctamente. Cuando intento obtener ese token para verificarlo. No puedo obtener ese token. Y console.log(find_refreshtoken) muestra datos inesperados en lugar de mostrar el token. Quiero obtener solo tomados de estos datos.
Por favor, ayúdame. Gracias.

 { _id: 621df700e560c645664a5b8a tooken: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE2NDYxMzA5NDQsImV4cCI6M..." user: 620cc33a4776c82d2f636399 createdAt: 2022-03-01T10:35:44.270+00:00 __v: 0 }

el código va aquí:

 verifyRefreshToken: (refreshToken) =>{ return new Promise((resolve,reject)=>{ JWT.verify(refreshToken,process.env.Refresh_Token_Secret,(err,payload)=>{ if(err)return reject(createError.Unauthorized()) const userId=payload.aud const find_refreshtoken= RefreshTokenModel.find({"user":userId},{"tooken":1,"_id":0}); console.log(find_refreshtoken); if(!find_refreshtoken){ reject(createError.InternalServerError()) return } if(find_refreshtoken === refreshToken){ console.log(find_refreshtoken); return resolve(userId) }else{reject(createError.Unauthorized())} //It is executing this part //resolve(userId) }) }) }
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Todo lo que necesitas es leer la documentación .

El método de find devuelve una consulta , lo que significa que son datos esperados, no como usted reclama datos inesperados .

Entonces, para que su código funcione, simplemente cambie:

 const find_refreshtoken = RefreshTokenModel.find({"user":userId},{"tooken":1,"_id":0});

a:

 const result = await RefreshTokenModel.find({"user":userId},{"tooken":1,"_id":0}).exec();

o incluso mejor usa findOne , ya que solo quieres uno, supongo:

 const result = await RefreshTokenModel.findOne({"user":userId},{"tooken":1,"_id":0}).exec();
about 4 years ago · Juan Pablo Isaza 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!