版本控制

最后更新时间:2021-01-13 19:32:53

    简介

    本文档提供关于版本控制的 API 概览以及 SDK 示例代码。

    API 操作名 操作描述
    PUT Bucket versioning 设置版本控制 设置存储桶的版本控制功能
    GET Bucket versioning 查询版本控制 查询存储桶的版本控制信息

    设置版本控制

    功能说明

    设置指定存储桶的版本控制功能(PUT Bucket versioning)。

    方法原型

    CosResult BucketOp::PutBucketVersioning(const PutBucketVersioningReq& req, PutBucketVersioningResp* resp);

    请求示例

    qcloud_cos::CosConfig config("./config.json");
    qcloud_cos::CosAPI cos(config);
    std::string bucket_name = "examplebucket-1250000000";
    qcloud_cos::PutBucketVersioningReq req(bucket_name);
    qcloud_cos::PutBucketVersioningResp resp;
    
    // 开启版本控制
    req.SetStatus(true);
    
    qcloud_cos::CosResult result = cos.PutBucketVersioning(req, &resp);
    
    if (result.IsSucc()) {
        // 请求成功
    } else {
        // 请求失败,可以调用 CosResult 的成员函数输出错误信息,例如 requestID 等
    } 

    参数说明

    参数 参数描述 类型 是否必填
    req PutBucketVersioning 操作的请求 PutBucketVersioningReq
    resp PutBucketVersioning 操作的响应 PutBucketVersioningResp

    PutBucketVersioningReq 提供了如下方法开启或暂停版本控制:

    void SetStatus(bool is_enable);

    查询版本控制

    功能说明

    查询指定存储桶的版本控制信息(GET Bucket versioning)。

    方法原型

    CosResult CosAPI::GetBucketVersioning(const GetBucketVersioningReq& request, GetBucketVersioningResp* response);

    请求示例

    qcloud_cos::CosConfig config("./config.json");
    qcloud_cos::CosAPI cos(config);
    std::string bucket_name = "examplebucket-1250000000";
    qcloud_cos::GetBucketVersioningReq req(bucket_name);
    qcloud_cos::GetBucketVersioningResp resp;
    
    qcloud_cos::CosResult result = cos.GetBucketVersioning(req, &resp);
    
    if (result.IsSucc()) {
        // 请求成功,通过resp的方法获取版本控制状态
    } else {
        // 请求失败,可以调用 CosResult 的成员函数输出错误信息,例如 requestID 等
    } 

    参数说明

    参数 参数描述 类型 是否必填
    req GetBucketVersioning 操作的请求 GetBucketVersioningReq
    resp GetBucketVersioning 操作的响应 GetBucketVersioningResp

    GetBucketVersioningResp 提供以下方法获取版本控制状态:

    int GetStatus() const;