Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Atualizado em 2022-11-07 GMT+08:00

Exclusão de objetos

Funções

Essa operação pode ser usada para excluir em lote alguns objetos em um bucket. A exclusão não pode ser desfeita. Depois que a operação é implementada, as informações retornadas contêm o resultado da implementação de cada objeto no bucket especificado. O OBS exclui os objetos de forma síncrona. O resultado da exclusão de cada objeto é retornado para o usuário da solicitação.

Objetos em lotes podem ser excluídos no modo verbose ou quiet. Com o modo verbose, o OBS retorna resultados de exclusão sucedida e falha em uma resposta XML; com o modo quiet, o OBS retorna apenas resultados de exclusão falhada em uma resposta XML. O OBS usa o modo verbose por padrão e você pode especificar o modo quiet no corpo da solicitação.

Para a exclusão em lote, o cabeçalho da solicitação deve conter Content-SHA256 e Content-Length, para que o corpo da mensagem possa ser identificado se um erro de transmissão de rede for detectado no lado do servidor.

Sintaxe da solicitação

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
POST /?delete HTTP/1.1  
Host: bucketname.obs.region.myhuaweicloud.com 
Date: date
Authorization: authorization
Content-SHA256: SHA256
Content-Length: length

<?xml version="1.0" encoding="UTF-8"?>   
<Delete> 
    <Quiet>true</Quiet>  
    <Object> 
        <Key>Key</Key> 
        <VersionId>VersionId</VersionId> 
    </Object>  
    <Object>  
        <Key>Key</Key> 
    </Object> 
</Delete>

Parâmetros de solicitação

Essa solicitação não envolve parâmetros.

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 usa elementos para especificar a lista de objetos a serem excluídos em um lote. Tabela 1 descreve os elementos.

Tabela 1 Elementos de solicitação

Elemento

Descrição

Obrigatório

Quiet

Especifica o modo quiet. Com o modo quiet, o OBS retorna apenas a lista de objetos que falharam ao serem excluídos. Este elemento é válido quando definido como true. Caso contrário, o OBS ignora.

Tipo: boolean

Não

EncodingType

This parameter specifies the encoding type of the object key to be deleted and the object key in the response. If an object key contains control characters that are not supported by the XML 1.0 standard, you can set this element to specify the encoding type of the object key.

Type: string

Optional value: url

No

Delete

Lista de objetos a serem excluídos

Tipo: XML

Sim

Object

Nomes dos objetos a serem excluídos

Tipo: XML

Sim

Key

Chave do objeto a ser excluído Se EncodingType for especificado, a chave do objeto deve ser codificada com base no tipo de codificação.

Tipo: string

Sim

VersionId

ID de versão do objeto a ser excluído

Tipo: string

Não

Um máximo de 1000 objetos podem ser excluídos de cada vez. Se você enviar uma solicitação para excluir mais de 1000 objetos, o OBS retornará uma mensagem de erro.

Depois que tarefas simultâneas são atribuídas, o OBS pode encontrar um erro interno durante a exclusão cíclica de vários objetos. Nesse caso, os metadados ainda existem quando os dados do índice de objeto são excluídos, o que significa inconsistência de dados.

Sintaxe da resposta

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
HTTP/1.1 status_code
Date: date
Content-Type: application/xml 
Content-Length: length

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<DeleteResult xmlns="http://obs.region.myhuaweicloud.com/doc/2015-06-30/">
<Deleted> 
    <Key>Key</Key> 
</Deleted> 
<Error> 
    <Key>Key</Key> 
    <Code>ErrorCode</Code> 
    <Message>messagee</Message> 
</Error> 
</DeleteResult>

Cabeçalhos de resposta

A resposta à solicitação usa cabeçalhos comuns. Para mais detalhes, consulte Tabela 1.

Elementos de resposta

Essa resposta usa elementos para retornar resultados de objetos excluídos em um lote. Tabela 2 descreve os elementos.

Tabela 2 Elementos de resposta

Elemento

Descrição

DeleteResult

Nó raiz das respostas de exclusão em lote

Tipo: container

Deleted

Contêiner para resultados de exclusão sucedida

Tipo: container

Error

Contêiner para resultados de exclusão com falha

Tipo: container

EncodingType

Encodes the Key in the response based on the specified type. If EncodingType is specified in the request, the Key in the response is encoded.

Type: string

Key

Nomes de objeto em um resultado de exclusão

Tipo: string

Code

Código de erro de uma falha de exclusão

Tipo: string

Message

Mensagem de erro de uma falha de exclusão

Tipo: string

VersionId

Os ID de versão dos objetos a serem excluídos

Tipo: string

DeleteMarker

Se esse elemento for especificado, true será retornado quando você criar ou excluir um marcador de exclusão no bucket solicitado com o versionamento ativado.

Tipo: boolean

DeleteMarkerVersionId

Indica a ID de versão do marcador de exclusão excluído ou criado pela solicitação.

Se a solicitação criar ou excluir um marcador de exclusão, o OBS retornará esse elemento em resposta com o ID de versão do marcador de exclusão. Este elemento será retornado em um dos seguintes casos:

  • Você envia uma solicitação sem versão, ou seja, especifica apenas o nome do objeto, mas não o ID da versão. Nesse caso, o UDS cria um marcador de exclusão e retorna seu ID de versão na resposta.
  • Você envia uma solicitação com versões, ou seja, especifica chaves de objeto e os ID de versão que identificam marcadores de exclusão. Nesse caso, o OBS exclui o marcador de exclusão e retorna seu ID de versão na resposta.

Tipo: boolean

Respostas de erro

1. Se o resultado da resolução de uma solicitação XML contiver mais de 1000 objetos, o OBS retornará 400 Bad Request.

2. Se a chave de objeto em uma solicitação XML for inválida (por exemplo, contendo mais de 1024 caracteres), o OBS retornará 400 Bad Request.

3. Se o cabeçalho da solicitação não contiver Content-SHA256, o OBS retornará 400 Bad Request.

Para outros erros, veja Tabela 2.

Solicitação de exemplo

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
POST /test333?delete HTTP/1.1
User-Agent: curl/7.29.0
Host: 127.0.0.1
Accept: */*
Date: WED, 01 Jul 2015 04:34:21 GMT
Authorization: OBS H4IPJX0TQTHTHEBQQCEC:8sjZWJlWmYmYnK5JqXaFFQ+vHEg=
Content-SHA256: ogX9qClMrVJUBiUSIKDFM0qO41jJM0I5SCN55/OtMyI=
Content-Length: 188

<?xml version="1.0" encoding="utf-8"?>
<Delete> 
  <Quiet>true</Quiet>  
  <Object> 
    <Key>obja02</Key> 
  </Object>  
  <Object> 
    <Key>obja02</Key> 
  </Object> 
</Delete>

Resposta de exemplo

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
HTTP/1.1 200 OK
Server: OBS
x-obs-request-id: 8DF400000163D3FE4CE80340D30B0542
x-obs-id-2: 32AAAQAAEAABAAAQAAEAABAAAQAAEAABCRhY0FBWRm6qjOE1ACBZwS+0KYlPBq0f
Content-Type: application/xml
Date: WED, 01 Jul 2015 04:34:21 GMT
Content-Length: 120

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<DeleteResult xmlns="http://obs.ap-southeast-1.myhuaweicloud.com/doc/2015-06-30/"/>