Configuração do versionamento para um bucket
Funções
Esta operação restaura um objeto que foi substituído ou excluído por engano. Você pode usar o versionamento para salvar, consultar e restaurar objetos de versões diferentes. O versionamento permite que você recupere facilmente dados perdidos devido a operações incorretas ou falhas de programa. O versionamento também pode ser usado para reter e arquivar dados.
Por padrão, o versionamento é desativado para buckets.
Você pode executar essa operação para ativar ou suspender o versionamento de um bucket.
Depois que o versionamento é ativado para um bucket:
- O OBS cria um ID de versão exclusivo para cada objeto carregado. Objetos namesake não são sobrescritos e são distinguidos por seus próprios ID de versão.
- Você pode baixar objetos especificando os ID de versão. Por padrão, o último objeto será baixado se a ID da versão não for especificado.
- Os objetos podem ser excluídos por ID de versão. Se um objeto for excluído sem uma ID de versão especificada, o objeto será anexado apenas com um marcador de exclusão e uma ID de versão exclusiva, mas não será excluído fisicamente.
- Os objetos mais recentes em um bucket são retornados por padrão após uma solicitação GET Object. Você também pode enviar uma solicitação para obter objetos de um bucket com todos os ID de versão.
- Exceto marcadores de exclusão e metadados de objeto, o espaço de armazenamento ocupado por objetos com todos os ID de versão é cobrado.
Depois que o versionamento é suspenso para um bucket:
- Objetos existentes com os ID de versão não são afetados.
- O sistema cria o ID de versão null para um objeto carregado e o objeto será sobrescrito depois que um homônimo for carregado.
- Você pode baixar objetos especificando os ID de versão. Por padrão, o último objeto será baixado se a ID da versão não for especificado.
- Os objetos podem ser excluídos por ID de versão. Se um objeto for excluído sem a ID de versão especificada, o objeto será anexado com um marcador de exclusão cuja ID de versão é null. O objeto com ID de versão null é fisicamente excluído.
- Exceto marcadores de exclusão e metadados de objeto, o espaço de armazenamento ocupado por objetos com todos os ID de versão é cobrado.
Somente o proprietário do bucket pode definir o versionamento para o bucket.
Sintaxe da solicitação
1 2 3 4 5 6 7 8 9 |
PUT /?versioning HTTP/1.1 Host: bucketname.obs.region.myhuaweicloud.com Date: date Authorization: authorization Content-Length: length <VersioningConfiguration> <Status>status</Status> </VersioningConfiguration> |
Parâmetros de solicitação
Esta solicitação não contém nenhum parâmetro.
Cabeçalhos de solicitação
Essa solicitação usa cabeçalhos comuns. Para mais detalhes, consulte Tabela 3.
Elementos de solicitação
Essa solicitação contém elementos para configurar o versionamento do bucket no formato XML. Tabela 1 lista os elementos da solicitação.
Elemento |
Descrição |
Obrigatório |
---|---|---|
VersioningConfiguration |
Nó raiz para configurar o versionamento Nó do antepassado: nenhum |
Sim |
Status |
Status de versionamento do bucket Tipo: enumeração Nó ancestral: VersioningConfiguration Opções de valor: Ativado, Suspenso |
Sim |
Sintaxe da resposta
1 2 3 4 |
HTTP/1.1 status_code Date: date Content-Length: length |
Cabeçalhos de resposta
A resposta à solicitação usa cabeçalhos comuns. Para mais detalhes, consulte Tabela 1.
Elementos de resposta
Esta resposta não envolve elementos.
Respostas de erro
Nenhuma resposta de erro especial está envolvida. Para obter detalhes sobre respostas de erro, consulte Tabela 2.
Solicitação de exemplo
1 2 3 4 5 6 7 8 9 10 11 |
PUT /?versioning HTTP/1.1 User-Agent: curl/7.29.0 Host: examplebucket.obs.region.myhuaweicloud.com Accept: */* Date: WED, 01 Jul 2015 03:14:18 GMT Authorization: OBS H4IPJX0TQTHTHEBQQCEC:sc2PM13Wlfcoc/YZLK0MwsI2Zpo= Content-Length: 89 <VersioningConfiguration> <Status>Enabled</Status> </VersioningConfiguration> |
Resposta de exemplo
1 2 3 4 5 6 |
HTTP/1.1 200 OK Server: OBS x-obs-request-id: BF26000001643672B973EEBC5FBBF909 x-obs-id-2: 32AAAQAAEAABSAAgAAEAABAAAQAAEAABCSH6rPRHjQCa62fcNpCCPs7+1Aq/hKzE Date: Date: WED, 01 Jul 2015 03:14:18 GMT Content-Length: 0 |