六个 Access-Control-Allow-Origin header

S3 set Access-Control-Allow-Origin header

我正在尝试使用 knox 和 node.js 在 S3 上上传文件:

var s3req = s3.putBuffer(buffer, fileName, {
            'Access-Control-Allow-Origin': 'http://myurl.com',
            'Content-Type': mimetype,
            'Cache-Control': 'public, max-age=' + maxAge,
            'x-amz-acl': 'public-read'
        }, function (err, s3res) {
            // do something

文件上传正常。但是,当使用 XHR 请求资源时,响应中没有 Access-Control-Allow-Origin header,因此失败。

无法在单个资源上设置此 header 吗?我必须在整个存储桶上设置它吗?

简单的答案是 - 你必须把它放在桶上,因为没有什么比在对象级别设置这样的东西更好的了。

Link to EditingBucketPermissions