AWS客户端-s3 getSignedUrl等效



我的客户端当前正在使用包aws-sdk中的getSignedUrlPromise访问一些对象。请求是从后端完成的,签名的url会返回给客户端,一切都很好。

我现在正尝试从aws-sdk迁移到@aws-sdk/client-s3。我想保持相同的结构,但在文档中找不到这样的命令。

我非常确信@aws-sdk/client-s3能够返回签名的url

有什么(不时髦的(方法可以做吗?

编辑:基于此,我应该在@aws-sdk/client-s3的顶部使用@aws-sdk/s3-request-presigner来获得预签名的URL。

您可以使用@aws sdk/s3请求预签名器。例如:

const { getSignedUrl } = require("@aws-sdk/s3-request-presigner");
const { S3Client, GetObjectCommand } = require("@aws-sdk/client-s3");
const clientParams = { region: "us-east-1" };
const getObjectParams = { Bucket: "mybucket", Key: "dogs/snoopy.png" };
const client = new S3Client(clientParams);
const command = new GetObjectCommand(getObjectParams);
const url = await getSignedUrl(client, command, { expiresIn: 3600 });
console.log(url);

最新更新