如果在使用 AWS SDK S3 上传文件时遇到CORS错误,并且该错误是由CacheControl选项引起的,可以按照以下步骤解决:
使用AWS SDK的S3 client实例创建一个PutObjectRequest对象
在PutObjectRequest对象中设置CacheControl选项
使用S3 client实例调用putObject方法时将PutObjectRequest对象作为参数传递
以下是示例代码:
const AWS = require('aws-sdk');
const s3 = new AWS.S3();
const params = {
Bucket: 'your-bucket-name',
Key: 'your-object-key',
Body: 'your-object-content',
ACL: 'public-read',
CacheControl: 'max-age=31536000',
}
s3.putObject(params, (err, data) => {
if (err) {
console.error(err);
} else {
console.log(data);
}
});
这样,AWS SDK会在上传文件时设置正确的CORS头,以避免由CacheControl选项引起的CORS错误。