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.
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.
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:
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/"/> |