最近更新时间:2025-04-25 15:42:43
简单复制适用于小文件的复制(文件大小建议小于1GB),当文件超过5GB时,需要使用分块复制。
client.object.copyObject({
Bucket: '<bucketName>', // 填入存储桶,非必填
Key: 'slice-copy/test.txt', //目标对象,必填
SourceBucket: 'tt2-test', //源桶,必填
SourceKey: 'slice-copy/test.txt', //源对象,必填
ACL: 'public-read', //对象的预定义权限,有效值:private、public-read,非必填
onProgress: function (res) {
console.log('接收到的数据', JSON.stringify(res))
}, //拷贝进度,非必填
headers:{
'x-kss-forbid-overwrite': true //非必填,源和目标不同Key复制时,同名文件是否覆盖上传,有效值:true:表示禁止覆盖同名文件(默认值)、false:表示同名文件覆盖上传
}
}, function (err, data, res, body) {
if (err) {
console.log('==========> err:', err)
} else {
console.log('==========> data:', JSON.stringify(data))
console.log('==========> statusCode:', res.statusCode)
}
})高级复制实现了分块复制的全过程,分块复制支持复制超过5GB的文件。
client.advance.sliceCopyFile({
Bucket: '<bucketName>', // 非必填,填入存储桶
Key: 'slice-copy/test.txt', //必填,目标对象
SourceBucket: 'tt2-test', //必填,源桶
SourceKey: 'slice-copy/test.txt', //必填,源对象
ACL: 'public-read', //非必填,对象的预定义权限,有效值:private、public-read
Headers: {
'x-kss-forbid-overwrite': true //非必填,源和目标不同Key复制时,同名文件是否覆盖上传,有效值:true:表示禁止覆盖同名文件(默认值)、false:表示同名文件覆盖上传
},
onProgress: function (res) {
console.log('接收到的数据', JSON.stringify(res))
} //拷贝进度,非必填
}, function (err, data, res, body) {
if (err) {
console.log('==========> err:', err)
} else {
console.log('==========> data:', JSON.stringify(data))
console.log('==========> statusCode:', res.statusCode)
}
})
纯净模式
