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

160
Views
How to use promises with AWS headObject?

Using Node AWS SDK which supports callbacks and promises.. https://aws.amazon.com/blogs/developer/support-for-promises-in-the-sdk/

Using q as promise library.. AWS.config.setPromisesDependency(q);

const headObjProm = this.s3Client.headObject(headParams).promise();

 headObjProm
   .then(ret => {
     //ret is promise..
   })

console logging ret shows..

(resolve, reject) {
   self.on('complete', function(resp) {
     if (resp.error) {
       reject(resp.error);
     } else {
       resolve(resp.data);
     }
  });

I was under impression ret would be data or error message? The documentation on AWS is all done in callback style. How to use this with promises?

about 4 years ago · Santiago Trujillo
2 answers
Answer question

0

When you're initializing the Q package as the Promise to use, you need to specify the Promise property from Q.

AWS.config.setPromisesDependency(require('Q').Promise);

about 4 years ago · Santiago Trujillo Report

0

Since const headObjProm = this.s3Client.headObject(headParams).promise(); is asynchronous, how about say you have this in an async function and use await like so:

`const resolveHeadObject = async()=> await s3Client.headObject(headParams).promise()`

I use the await/async syntax and it works for me.

Don't forget to add .Promise to your Q require as well, if that's necessary.

about 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!