OSS允许用户对存储空间设置生命周期规则,以自动淘汰过期掉的文件,节省存储空间。 更多关于生命周期的内容请参考
文件生命周期
设置生命周期规则
通过oss_put_bucket_lifecycle接口,可以实现设置生命周期规则:
lifecycle的配置规则由一段xml表示。
各字段解释:
<LifecycleConfiguration>
<Rule>
<ID>delete obsoleted files</ID>
<Prefix>obsoleted/</Prefix>
<Status>Enabled</Status>
<Expiration>
<Days>3</Days>
</Expiration>
</Rule>
</LifecycleConfiguration>
aos_pool_t *p;
oss_request_options_t *options;
aos_status_t *s;
aos_table_t *resp_headers;
char *bucket_name = "<您的bucket名字>";
aos_string_t bucket;
aos_list_t lifecycle_rule_list;
oss_lifecycle_rule_content_t *rule_content;
char *rule_name = "rule_name";
aos_pool_create(&p, NULL);
/* 创建并初始化options */
options = oss_request_options_create(p);
init_options(options);
/* 创建生命周期规则并设置给存储空间 */
aos_str_set(&bucket, bucket_name);
aos_list_init(&lifecycle_rule_list);
rule_content = oss_create_lifecycle_rule_content(p);
aos_str_set(&rule_content->id, rule_name);
aos_str_set(&rule_content->prefix, "obsoleted");
aos_str_set(&rule_content->status, "Enabled");
rule_content->days = 3;
aos_list_add_tail(&rule_content->node, &lifecycle_rule_list);
s = oss_put_bucket_lifecycle(options, &bucket, &lifecycle_rule_list, &resp_headers);
if (aos_status_is_ok(s)) {
printf("put bucket lifecycle succeeded\n");
} else {
printf("put bucket lifecycle failed\n");
}
aos_pool_destroy(p);
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。