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
已提問 6 個月前檢視次數 125 次
沒有答案

您尚未登入。 登入 去張貼答案。

一個好的回答可以清楚地回答問題並提供建設性的意見回饋,同時有助於提問者的專業成長。

回答問題指南