AWS S3 Transfer Acceleration optimization guide with Pre-signed URLs in Node.js
I am trying to leverage AWS S3 Transfer Acceleration to speed up uploads from my Node.js application using pre-signed URLs. The question Iโm working with is that the pre-signed URL generated does not seem to be utilizing the transfer acceleration endpoint. When I attempt to upload a file using the pre-signed URL, I get a `403 Forbidden` behavior, indicating that the request is not authorized. My S3 bucket is configured for transfer acceleration, and Iโve verified that the `AccelerateConfiguration` is set up correctly. I am using the `aws-sdk` version `2.1030.0`. Hereโs how Iโm generating the pre-signed URL: ```javascript const AWS = require('aws-sdk'); AWS.config.update({ region: 'us-east-1' }); const s3 = new AWS.S3(); const bucketName = 'my-accelerated-bucket'; const keyName = 'uploads/myfile.txt'; const params = { Bucket: bucketName, Key: keyName, Expires: 60, // URL expiration time in seconds }; const url = s3.getSignedUrl('putObject', params); console.log(url); ``` I can upload to the standard S3 endpoint without any issues, but when I try to upload using the URL generated, I encounter the behavior mentioned above. I suspect it might be related to the URL being generated for the standard endpoint rather than the accelerated one. I also checked the permission policies attached to the role, and they look fine. What am I missing here? Is there a specific option I need to set in the `getSignedUrl` method to ensure the pre-signed URL uses the accelerated endpoint?