typescript - AWS SDK client-s3:如何从 PutObjectCommandOutput 获取 VersionId?
问题描述
我目前有一段客户端 Typescript 代码,如下所示:
...
const putParams: PutObjectCommandInput = {
Bucket: bucket,
Key: key,
Expires: new Date(Date.now() + 30 * 60),
ContentType: contentType,
Body: body,
};
const putCommand: PutObjectCommand = new PutObjectCommand(putParams);
const result: PutObjectCommandOutput = await s3.send(putCommand);
console.log(result.VersionId);
我的代码中的VersionId
字段正在返回undefined
,即使在我的浏览器的网络面板中我可以清楚地看到从 S3 返回的正确标头,即x-amz-version-id: xx_Xx_XXxxxXXXxXXxXXxXxXXXXX.xXx
. 我在这里做错了什么?
编辑: 原来问题出在 S3 Bucket 上的 CORS 配置上,添加以下几行为我解决了这个问题:
...
"ExposeHeaders": [
"ETag",
"x-amz-version-id",
"VersionId"
]
...
解决方案
推荐阅读
- wix - 当我使用 /quiet 参数从 CMD 运行 wix MSI 时,它不会启动
- c++ - 如何保存数组并在 C++ 上打印它们
- csv - 为 grafana 的 influx 上传器设置带注释的 csv
- django - Django 3.1.7 模型自定义约束
- git - 如何通过 git 从意外撤消 Android Studio 中的工作中恢复?
- python-3.x - 如何使用 FTP 服务器和 django rest api 上传文件....怎么做?
- expression - 报表生成器表达式 IIF 值包含其他值
- flutter - E/MethodChannel#com.viztushar.flutter.flutter_stickers_internet/sharedata(28013):处理方法调用失败
- r - R查找由mutate()中另一列的值定义的列的值
- mysql - 如何根据来自 T1 的数据返回 T2 名称?