Encontre Blobs por Tags

A Find Blobs by Tags operação encontra todas as bolhas na conta de armazenamento cujas etiquetas correspondem a uma expressão de pesquisa.

Pedir

Pode construir o pedido da Find Blobs by Tags seguinte forma. Recomendamos HTTPS. Substitua a minha conta pelo nome da sua conta de armazenamento.

GET método request URI Versão HTTP
https://myaccount.blob.core.windows.net?comp=blobs&where=<expression> HTTP/1.1

Parâmetros URI

Pode especificar os seguintes parâmetros adicionais no pedido URI:

Parâmetro Description
expression Obrigatório. Filtra o resultado definido para incluir apenas bolhas cujas etiquetas correspondem à expressão especificada.

Para obter mais informações sobre como construir esta expressão, consulte Comentários.
marker Opcional. Um valor de cadeia que identifica a parte do conjunto de resultados a ser devolvido com a operação seguinte. A operação devolve um valor de marcador dentro do organismo de resposta se o conjunto de resultados devolvidos não estiver completo. O valor do marcador pode então ser utilizado numa chamada posterior para solicitar o próximo conjunto de itens.

O valor do marcador é opaco para o cliente.
maxresults Opcional. Especifica o número máximo de bolhas para devolver. Se o pedido não especificar maxresults ou especificar um valor superior a 5.000, o servidor devolve até 5.000 itens. Se houver resultados adicionais para devolver, o serviço devolve um sinal de continuação no NextMarker elemento de resposta. Em certos casos, o serviço pode devolver menos resultados do que maxresults as especificações. O serviço também pode devolver um sinal de continuação.

Definir maxresults um valor inferior ou igual a zero resulta no código de resposta de erro 400 (Mau Pedido).
timeout Opcional. Expresso em segundos. Para obter mais informações, consulte os intervalos de tempo definidos para as operações de Armazenamento Blob.

Cabeçalhos do pedido

A tabela que se segue descreve os cabeçalhos de pedido necessários e opcionais:

Cabeçalho do pedido Description
Authorization Obrigatório. Especifica o esquema de autorização, nome da conta e assinatura. Para mais informações, consulte Os pedidos autorizados para o Armazenamento Azure.
Date ou x-ms-date Obrigatório. Especifica a Hora Universal Coordenada (UTC) do pedido. Para mais informações, consulte Os pedidos autorizados para o Armazenamento Azure.
x-ms-version Requerido para todos os pedidos autorizados, mas opcional para pedidos anónimos. Especifica a versão da operação a utilizar para este pedido. Para mais informações, consulte a versão para os serviços de Armazenamento Azure.
x-ms-client-request-id Opcional. Fornece um valor opaco gerado pelo cliente com um limite de caracteres de 1 kibibyte (KiB) que é gravado nos registos do Monitor Azure quando o registo é configurado. Recomendamos vivamente que utilize este cabeçalho para correlacionar as atividades do lado do cliente com os pedidos que o servidor recebe. Para obter mais informações, consulte a sessão de Azure: Utilize registos para rastrear os pedidos de armazenamento.

Corpo do pedido

Nenhum.

Resposta

A resposta inclui um código de estado HTTP, cabeçalhos de resposta e um corpo de resposta.

Código de estado

Uma operação bem sucedida devolve o código de estado 200 (OK).

Para obter informações sobre códigos de estado, consulte códigos de estado e de erro.

Cabeçalhos de resposta

A resposta para esta operação inclui os seguintes cabeçalhos. A resposta também pode incluir cabeçalhos HTTP padrão adicionais. Todos os cabeçalhos standard estão de acordo com a especificação do protocolo HTTP/1.1.

Cabeçalho de resposta Descrição
Content-Type application/xml Especifica como o tipo de conteúdo.
Content-Length Especifica o tamanho do documento XML devolvido, em bytes.
x-ms-request-id Identifica exclusivamente o pedido que foi feito. Pode usá-lo para resolver o pedido. Para mais informações, consulte as operações da API de resolução de problemas.
x-ms-version Indica a versão de Armazenamento de Blobs do Azure que foi usada para executar o pedido.
Date Uma data/valor de hora UTC que indica a hora em que o serviço enviou a resposta.
x-ms-client-request-id Pode ser usado para resolver pedidos de resolução de problemas e respostas correspondentes. O valor deste cabeçalho é igual ao valor do x-ms-client-request-id cabeçalho, se estiver presente no pedido e o valor for no máximo 1.024 caracteres ASCII visíveis. Se o x-ms-client-request-id cabeçalho não estiver presente no pedido, este cabeçalho não estará presente na resposta.

Corpo da resposta

Na versão 2020-04-08 e mais tarde, as etiquetas correspondentes da bolha são encapsuladas dentro de um Tags elemento. O formato do corpo de resposta é o seguinte:

<?xml version="1.0" encoding="utf-8"?>  
<EnumerationResults ServiceEndpoint=http://myaccount.blob.core.windows.net/>  
  <Where>string-value</Where>  
  <Blobs>  
    <Blob>  
      <Name>blob-name</Name>  
      <ContainerName>container-name</ContainerName>  
      <Tags>
        <TagSet>
          <Tag>
            <Key>matching-tag-name1</Key>
            <Value>matching-tag-value1</Value>
          </Tag>
          <Tag>
            <Key>matching-tag-name2</Key>
            <Value>matching-tag-value2</Value>
          </Tag>
        </TagSet>
      </Tags> 
    </Blob>  
  </Blobs>  
  <NextMarker />  
</EnumerationResults>  

O corpo de resposta é um documento UTF-8 XML bem formado.

Autorização

Os seguintes utilizadores podem efetuar esta operação:

  • O dono da conta.
  • Qualquer pessoa com uma assinatura de acesso partilhado (SAS) que tenha permissão para encontrar bolhas por tags (a f permissão SAS). É necessária uma conta SAS para autorização.
  • Utilizadores de controlo de acesso baseado em funções (RBAC) que têm a Microsoft.Storage/storageAccounts/blobServices/containers/blobs/filter/action permissão.

Observações

A Find Blobs by Tags operação é suportada na versão REST API 2019-12-12 e posteriormente.

O índice secundário que Find Blobs by Tags usa é eventualmente consistente. Atualizações a etiquetas de bolhas via Set Blob Tags pode não ser imediatamente visível para as Find Blobs by Tags operações.

Construção de uma expressão de pesquisa

O where parâmetro URI encontra bolhas na conta de armazenamento cujas etiquetas correspondem a uma expressão. A expressão deve avaliar para true que uma bolha seja devolvida no conjunto de resultados.

O serviço de armazenamento suporta um subconjunto da gramática da cláusula ANSI SQL WHERE para o valor do where=<expression> parâmetro de consulta. O serviço de armazenamento suporta os seguintes operadores:

Operador Descrição Exemplo
= Igual &where=Status = 'In Progress'
> Maior que &where=LastModified > '2018-06-18 20:51:26Z'
>= Maior ou igual a &where=Priority >= '05'
< Menor que &where=Age < '032'
<= Menor ou igual a &where=Reviewer <= 'Smith'
AND Lógico e &where=Name > 'C' AND Name < 'D'
&where=Age > '032' AND Age < '100'
@container Especificar um recipiente &where=@container='mycontainer' AND Name = 'C'

Nota

O valor do where parâmetro URI deve ser devidamente codificado URI (incluindo espaços e operadores). Os exemplos anteriores omitem-no para a legibilidade.

Todos os valores da etiqueta são cordas. Os operadores binários suportados utilizam uma triagem lexicográfica dos valores da etiqueta. Para suportar tipos de dados não-cordas, incluindo números e datas, deve utilizar o acolchoamento apropriado e a formatação ordenada. Os valores da etiqueta devem ser incluídos em aspas únicas.

Se os nomes de etiquetas forem identificadores SQL regulares, podem estar presentes sem escapar. Se contiverem caracteres especiais, devem ser delimitados com aspas duplas (por exemplo, "TagName" = TagValue). Recomendamos que coloque sempre os nomes das etiquetas em aspas duplas.

O serviço de armazenamento rejeitará qualquer pedido que contenha uma expressão inválida com código de erro 400 (Mau Pedido).

Ver também

Gerir e encontrar dados sobre Armazenamento de Blobs do Azure com etiquetas de índice blob
Autorizar pedidos ao Azure Storage
Códigos de estado e de erro
Códigos de erro de armazenamento de bolhas