版本控制应用于存储空间(Bucket)内的所有文件(Object)。通过Object的版本管理,在错误覆盖或者删除Object后,您能够将Bucket中存储的Object恢复至任意时刻的历史版本。
注意事项
- 本文示例代码以华东1(杭州)的地域ID - cn-hangzhou为例,默认使用外网Endpoint,如果您希望通过与OSS同地域的其他阿里云产品访问OSS,请使用内网Endpoint。关于OSS支持的Region与Endpoint的对应关系,请参见OSS地域和访问域名。
- 本文以从环境变量读取访问凭证为例。如何配置访问凭证,请参见配置访问凭证。 
- 要设置Bucket版本控制状态,您必须具有 - oss:PutBucketVersioning权限;要获取Bucket版本控制状态信息,您必须具有- oss:GetBucketVersioning权限。具体操作,请参见为RAM用户授予自定义的权限策略。
方法定义
设置Bucket版本控制状态
func (c *Client) PutBucketVersioning(ctx context.Context, request *PutBucketVersioningRequest, optFns ...func(*Options)) (*PutBucketVersioningResult, error)获取Bucket版本控制状态信息
func (c *Client) GetBucketVersioning(ctx context.Context, request *GetBucketVersioningRequest, optFns ...func(*Options)) (*GetBucketVersioningResult, error)请求参数列表
| 参数名 | 类型 | 说明 | 
| ctx | context.Context | 请求的上下文,可以用来设置请求的总时限 | 
| request | *PutBucketVersioningRequest | 设置Bucket版本控制的请求参数,具体请参见PutBucketVersioningRequest | 
| *GetBucketVersioningRequest | 获取Bucket版本控制状态信息的请求参数,具体请参见GetBucketVersioningRequest | |
| optFns | ...func(*Options) | (可选)接口级的配置参数, 具体请参见Options | 
返回值列表
| 返回值名 | 类型 | 说明 | 
| result | *PutBucketVersioningResult | 设置Bucket版本控制的接口返回值,当 err 为nil 时有效,具体请参见PutBucketVersioningResult | 
| *GetBucketVersioningResult | 获取Bucket版本控制状态信息的接口返回值,当err为nil时有效,具体请参见GetBucketVersioningResult | |
| err | error | 请求的状态,当请求失败时,err 不为 nil | 
示例代码
相关文档
- 关于设置Bucket版本控制状态的API接口,请参见PutBucketVersioning。 
- 关于获取Bucket版本控制状态的API接口,请参见GetBucketVersioning。