How to use AWS SDK v3 (JavaScript) to copy between buckets in different regions?

0

I ran into this problem and unfortunately I cannot figure out what to do. It seems that the S3Client and only be configured for a specific region and the region key gets automatically attached.

So when using the CopyObjectCOmmand, I run into either a NoSuchBucket error, or, if not specifying the region key, I get the

PermanentRedirect: The bucket you are attempting to access must be addressed using the specified endpoint. Please send all future requests to this endpoint

error, because the bucket obviously is not found in the client region.

How can I solve this?

Here's the commands

const client = new S3Client({ region: "destination-region", credentials: {...} });

client.send(
  new CopyObjectCommand({
    Bucket: "<destination-bucket>",
    CopySource: "<source-bucket>/<source-key>",
    Key: "<destination-key>",
  })
);

// results in a PermanentRedirect error
// <source-bucket>.s3.<destination-region>.amazonaws.com endpoint not available because in different region
FloRag
已提问 5 个月前123 查看次数
没有答案

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则