判断Bucket是否存在
更新时间:2022-10-08
判断Bucket是否存在
若用户需要判断某个Bucket是否存在,则如下代码可以做到:
                C++
                
            
            1//0 表示check成功,bucket存在
2//-1不存在
3//other其他错误,具体error-message给出
4int checkBucketExist (Client& client, const std::string& bucketName) {
5    bool exist = false;
6    // 获取Bucket的存在信息
7    HeadBucketRequest request(bucketName);
8    HeadBucketResponse response;
9    int ret = client.head_bucket(request, &response);
10    if (response.is_fail() && response.status_code() != 404){
11        printf("error-message:%s\n", response.error().message().c_str());
12        return ret; 
13    } else if (response.status_code() == 404){
14        return -1;
15    }
16    //200 ok
17    return 0;
18}注意: 如果Bucket不为空(即Bucket中有Object存在),则Bucket无法被删除,必须清空Bucket后才能成功删除。
