无法从s3对象获取元数据

时间:2018-03-16 10:48:38

标签: amazon-s3

我手动将文件上传到S3,将元数据x-amz-meta-alt-name添加到此对象。

使用AWS Javascript SDK我试图获取元数据,但得到了一个空对象。

var params = {
    Bucket: "mybucket",
    Key: "myfile.txt"
};
s3.headObject(params, function(err, data) {
    console.log(data.Metadata['x-amz-meta-alt-name']);
});

输出: undefined

你有任何想法如何解决它?

也许我需要配置一些政策。

1 个答案:

答案 0 :(得分:2)

我认为你必须在CORS设置中公开这个值

<CORSRule> 
    <AllowedOrigin>*</AllowedOrigin> 
    <AllowedMethod>HEAD</AllowedMethod> 
    <AllowedHeader>*</AllowedHeader>
    <ExposeHeader>x-amz-meta-description</ExposeHeader>
</CORSRule>

但我不确定你是否可以在回调中获得这些值。

此主题将帮助您了解可能的内容以及https://github.com/aws/aws-sdk-js/issues/232

的内容