amazon-web-services - AWS client-s3 getSignedUrl 等效项
问题描述
我的客户目前正在使用包中的getSignedUrlPromise访问某些对象aws-sdk
。请求是从后端完成的,签名的 url 返回给客户端,一切都很好。
我现在正试图从迁移aws-sdk
到@aws-sdk/client-s3
. 我想保持相同的结构,但我在文档中找不到这样的命令。
我很确定@aws-sdk/client-s3
能够返回签名的网址
有没有(非hacky)方法可以做到这一点?
编辑:依靠这个,我应该@aws-sdk/s3-request-presigner
在上面使用@aws-sdk/client-s3
来获取预签名的网址。
解决方案
您可以使用@aws-sdk/s3-request-presigner。例如:
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);
推荐阅读
- java - 这个涉及递归和数组的 java 代码是如何工作的?
- java - 使用 Spring 和 Redis 的 Shedlock
- python - 如何使用 Selenium 从 Firefox 中删除消息浏览器处于远程控制之下
- php - 未创建 Cookie
- unity3d - Unity 2020.2 Alpha 不支持地形工具?
- python - 多索引json到数据框
- bpf - 如何在 bpftracing 脚本中使用结构
- eclipse - POM SNAPSHOT 的 Maven parent.relativePath 指向新父级而不是旧父级错误
- python - 我可以在循环 JSON 数据时附加到 pandas 数据框吗?
- android-espresso - Android Espresso 没有 NavController 设置错误