回收站
更新时间:2026-08-11
PutBucketTrash
本接口用于开通Bucket Trash功能,用户必须是源Bucket的owner且拥有FULL_CONTROL权限,且是目标Bucket的owner。
说明:
1.若已开通trash功能,会覆盖原目录名。
2."trashDir"只能包含字母,数字,中文,下划线(_)和短横线(-),小数点(.)。包含'/'会报错。
3.开通了trash功能的bucket, 删除object会到回收站中(回收站中的object的全称是:trashDir + '/' + old object name)。未开通此功能的bucket,或者开通此功能的bucket且删除回收站内的object时,会彻底删除。
4.归档类型文件不支持Bucket Trash,删除归档类型文件时会直接删除。
相关参数参见PutBucketTrash接口。
C++
1void put_bucket_trash(Client &client) {
2 PutBucketTrashRequest request(g_bucket, "trashTest");
3 PutBucketTrashResponse response;
4 client.put_bucket_trash(request, &response);
5 print_common_response(response);
6}
GetBucketTrash
本接口用于获取Bucket Trash开通状态,返回当前trash目录名,默认为.trash。用户必须是源Bucket的owner且拥有FULL_CONTROL权限,且是目标Bucket的owner。
相关参数参见GetBucketTrash接口。
C++
1void get_bucket_trash(Client &client) {
2 GetBucketTrashRequest request(g_bucket);
3 GetBucketTrashResponse response;
4 client.get_bucket_trash(request, &response);
5 print_common_response(response);
6 if (response.is_fail()) {
7 return;
8 }
9
10 std::cout << "trashDir: " << response.trash_dir() << std::endl;
11}
DeleteBucketTrash
本接口用于关闭trash功能,用户必须是源Bucket的owner且拥有FULL_CONTROL权限,且是目标Bucket的owner。
说明:即使未开通trash功能也返回204,满足delete幂等
相关参数参见DeleteBucketTrash接口。
C++
1void delete_bucket_trash(Client &client) {
2 DeleteBucketTrashRequest request(g_bucket);
3 DeleteBucketTrashResponse response;
4 client.delete_bucket_trash(request, &response);
5 print_common_response(response);
6}
评价此篇文章
