node.js - Amazon s3 putObject 标记不起作用

标签 node.js amazon-web-services amazon-s3 cloud

我尝试在使用 putObject 方法上传到 Amazon s3 时添加标签。根据文档,我已将标签创建为字符串类型。我的文件已上传到 Amazon s3,但我无法使用提供的标签数据查看文件对象的对象级别标签。

以下代码示例按照文档

var params = {
  Body: <Binary String>, 
  Bucket: "examplebucket", 
  Key: "HappyFace.jpg", 
  Tagging: "key1=value1&key2=value2"
 };
 s3.putObject(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response

 });

最佳答案

这可能是由于用户的权限造成的。我遇到了类似的问题,但使用 .NET,我可以添加标签,但随后无法查看它们。

后来我发现,要添加标签,用户必须拥有 s3:PutObjectTagging 权限,但要查看添加的标签,用户还必须拥有 s3:GetObjectTagging 权限。

基本上,您想要确认您拥有该用户的这两种权限。希望这有帮助

关于node.js - Amazon s3 putObject 标记不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51674193/

相关文章:

node.js - 使用 mongodb 4.x Node 驱动程序连接到 documentDB,端口转发不起作用

linux - Guacamole 0.9.3 SSH 私钥连接到 AWS EC2 Linux 实例

apache-spark - SparkSQL - 一些分区出现在 HiveServer2 但不是 SparkSQL

amazon-s3 - 使用 Amazon S3 渐进式下载和流式传输视频内容

ruby-on-rails - AWS::S3::Bucket:Class 的未定义方法 `find'

database - Mongoose 关系

node.js - Mongoose 一对多

node.js - 如何使用 sequelize 获得行的不同值?

node.js - 如何设置本地 AWS Secrets Manager Docker 容器以进行本地测试?

python - AWS beanstalk、mod_wsgi、python、进程和线程