tencent cloud

文档反馈

生命周期

最后更新时间:2024-01-19 15:33:39
    本文档提供关于生命周期的 API 概览以及 SDK 示例代码。
    API
    操作名
    操作描述
    设置生命周期
    设置存储桶的生命周期管理的配置
    查询生命周期
    查询存储桶生命周期管理的配置
    删除生命周期
    删除存储桶生命周期管理的配置

    设置生命周期

    功能说明

    设置指定存储桶的生命周期配置信息(PUT Bucket lifecycle)。

    方法原型

    public void setBucketLifecycleConfiguration(String bucketName, BucketLifecycleConfiguration bucketLifecycleConfiguration)
    throws CosClientException, CosServiceException;

    请求示例

    List<BucketLifecycleConfiguration.Rule> rules = new ArrayList<BucketLifecycleConfiguration.Rule>();
    // 规则1 30天后删除路径以 hongkong_movie/ 为开始的文件
    BucketLifecycleConfiguration.Rule deletePrefixRule = new BucketLifecycleConfiguration.Rule();
    deletePrefixRule.setId("delete prefix xxxy after 30 days");
    deletePrefixRule.setFilter(new LifecycleFilter(new LifecyclePrefixPredicate("hongkong_movie/")));
    // 文件上传或者变更后, 30天后删除
    deletePrefixRule.setExpirationInDays(30);
    // 设置规则为生效状态
    deletePrefixRule.setStatus(BucketLifecycleConfiguration.ENABLED);
    
    // 规则2 20天后沉降到低频,一年后删除
    BucketLifecycleConfiguration.Rule standardIaRule = new BucketLifecycleConfiguration.Rule();
    standardIaRule.setId("standard_ia transition");
    standardIaRule.setFilter(new LifecycleFilter(new LifecyclePrefixPredicate("standard_ia/")));
    List<BucketLifecycleConfiguration.Transition> standardIaTransitions = new ArrayList<BucketLifecycleConfiguration.Transition>();
    BucketLifecycleConfiguration.Transition standardTransition = new BucketLifecycleConfiguration.Transition();
    standardTransition.setDays(20);
    standardTransition.setStorageClass(StorageClass.Standard_IA.toString());
    standardIaTransitions.add(standardTransition);
    standardIaRule.setTransitions(standardIaTransitions);
    standardIaRule.setStatus(BucketLifecycleConfiguration.ENABLED);
    standardIaRule.setExpirationInDays(365);
    
    // 将两条规则添加到策略集合中
    rules.add(deletePrefixRule);
    rules.add(standardIaRule);
    
    // 生成 bucketLifecycleConfiguration
    BucketLifecycleConfiguration bucketLifecycleConfiguration =
    new BucketLifecycleConfiguration();
    bucketLifecycleConfiguration.setRules(rules);
    
    // 存储桶的命名格式为 BucketName-APPID
    String bucketName = "examplebucket-1250000000";
    SetBucketLifecycleConfigurationRequest setBucketLifecycleConfigurationRequest =
    new SetBucketLifecycleConfigurationRequest(bucketName, bucketLifecycleConfiguration);
    
    // 设置生命周期
    cosClient.setBucketLifecycleConfiguration(setBucketLifecycleConfigurationRequest);

    参数说明

    参数名称
    描述
    类型
    bucketName
    存储桶的命名格式为 BucketName-APPID,详情请参见 命名规范
    String
    bucketLifecycleConfiguration
    生命周期配置
    BucketLifecycleConfiguration

    返回结果说明

    成功:无返回值。
    失败:发生错误(如身份认证失败),抛出异常 CosClientException 或者 CosServiceException。具体请参见 异常处理

    查询生命周期

    功能说明

    查询存储桶的生命周期管理配置(GET Bucket lifecycle)。

    方法原型

    public BucketLifecycleConfiguration getBucketLifecycleConfiguration(String bucketName)
    throws CosClientException, CosServiceException;
    

    请求示例

    // 存储桶的命名格式为 BucketName-APPID ,此处填写的存储桶名称必须为此格式
    String bucketName = "examplebucket-1250000000";
    BucketLifecycleConfiguration queryLifeCycleRet =
    cosClient.getBucketLifecycleConfiguration(bucketName);
    List<BucketLifecycleConfiguration.Rule> ruleLists = queryLifeCycleRet.getRules();

    参数说明

    参数名称
    描述
    类型
    bucketName
    存储桶的命名格式为 BucketName-APPID,详情请参见 命名规范
    String

    返回结果说明

    成功:返回 BucketLifecycleConfiguration 类, 包含存储桶的生命周期规则。
    失败:发生错误(如身份认证失败),抛出异常 CosClientException 或者 CosServiceException。具体请参见 异常处理

    删除生命周期

    功能说明

    删除存储桶生命周期管理的配置(DELETE Bucket lifecycle)。

    方法原型

    public void deleteBucketLifecycleConfiguration(String bucketName)
    throws CosClientException, CosServiceException;

    请求示例

    //存储桶的命名格式为 BucketName-APPID
    String bucketName = "examplebucket-1250000000";
    cosClient.deleteBucketLifecycleConfiguration(bucketName);

    参数说明

    参数名称
    描述
    类型
    bucketName
    存储桶的命名格式为 BucketName-APPID,详情请参见 命名规范
    String

    返回结果说明

    成功:无返回值。
    失败:发生错误(如身份认证失败),抛出异常 CosClientException 或者 CosServiceException。具体请参见 异常处理
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持