使用S3API删除GCP存储桶对象 [英] Delete gcp bucket objects using s3 api
本文介绍了使用S3API删除GCP存储桶对象的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
删除对象的代码如下所示:
const s3 = new AWS.S3({
endpoint: spaceEndpoint,
accessKeyId,
secretAccessKey,
})
const params = {
Bucket: bucketName,
Delete: {
Objects: assetsToDelete,
},
}
try {
const res1 = await s3.deleteObjects(params).promise()
}catch(e){
console.log(e)
}
assetsToDelete的值为
{
Key: 'userId/folderName/object1'
},
{
Key: 'userId/folderName/object2'
}
]
但我收到错误:
InvalidArgument: Invalid argument.
ErrorSTACK {
code: 'InvalidArgument',
region: null,
time: 2021-02-12T20:30:42.055Z,
requestId: null,
extendedRequestId: undefined,
cfId: undefined,
statusCode: 400,
retryable: false,
retryDelay: 81.1455003388468
}
上述配置可以很好地用于上载和列出对象。我正在尝试从GCP存储桶中删除。
推荐答案
从发布之日起,谷歌云存储不支持多对象删除。
也就是说,您可以删除单个对象。 如果您想要跟踪此内容的添加情况,您可以查看https://issuetracker.google.com/issues/162653700此外,当您继续从S3迁移到Google Cloud Storage时,cloud.google.com/storage/docs/migrating#methods-comparison可能有助于比较这两个表面并进行呼叫
这篇关于使用S3API删除GCP存储桶对象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文