Partilhar via


Revisões de valor-chave

Uma revisão chave-valor define a representação histórica de um recurso chave-valor. As revisões expiram após 7 dias para lojas de nível gratuito ou 30 dias para lojas de nível Standard. As revisões apoiam a List operação.

Para todas as operações, key é um parâmetro opcional. Se omitido, implica qualquer chave.

Para todas as operações, label é um parâmetro opcional. Se omitido, implica qualquer rótulo.

Pré-requisitos

  • Todas as solicitações HTTP devem ser autenticadas. Consulte a seção de autenticação .
  • Todas as solicitações HTTP devem fornecer arquivos .api-version Consulte a seção de controle de versão.

Revisões da lista

GET /revisions?label=*&api-version={api-version} HTTP/1.1

Respostas:

HTTP/1.1 200 OK
Content-Type: application/vnd.microsoft.appconfig.kvset+json; charset=utf-8"
Accept-Ranges: items
{
    "items": [
        {
          "etag": "4f6dd610dd5e4deebc7fbaef685fb903",
          "key": "{key}",
          "label": "{label}",
          "content_type": null,
          "value": "example value",
          "last_modified": "2017-12-05T02:41:26.4874615+00:00",
          "tags": []
        },
        ...
    ],
    "@nextLink": "{relative uri}"
}

Paginação

O resultado será paginado se o número de itens retornados exceder o limite de resposta. Siga o cabeçalho de resposta opcional Link e use rel="next" para navegação. Como alternativa, o conteúdo fornece um próximo link na forma da @nextLink propriedade.

GET /revisions?api-version={api-version} HTTP/1.1

Resposta:

HTTP/1.1 OK
Content-Type: application/vnd.microsoft.appconfig.kvs+json; charset=utf-8
Accept-Ranges: items
Link: <{relative uri}>; rel="next"
{
    "items": [
        ...
    ],
    "@nextLink": "{relative uri}"
}

Lista subconjunto de revisões

Use o cabeçalho da Range solicitação. A resposta contém um cabeçalho Content-Range. Se o servidor não puder satisfazer o intervalo solicitado, ele responderá com HTTP 416 (RangeNotSatisfiable).

GET /revisions?api-version={api-version} HTTP/1.1
Range: items=0-2

Response

HTTP/1.1 206 Partial Content
Content-Type: application/vnd.microsoft.appconfig.revs+json; charset=utf-8
Content-Range: items 0-2/80

Filtragem

Uma combinação de key e label filtragem é suportada. Use os parâmetros opcionais key e label de seqüência de caracteres de consulta.

GET /revisions?key={key}&label={label}&api-version={api-version}

Há suporte para uma combinação de keye label tags filtragem. Use os parâmetros opcionais keye tags label de seqüência de caracteres de consulta. Vários filtros de tag podem ser fornecidos como parâmetros de cadeia de caracteres de tagName=tagValue consulta no formato. Os filtros de tags devem ser uma correspondência exata.

GET /revisions?key={key}&label={label}&tags={tagFilter1}&tags={tagFilter2}&api-version={api-version}

Filtros suportados

Filtro de chave Efeito
key for omitida ou key=* Corresponde a qualquer tecla
key=abc Corresponde a uma chave chamada abc
key=abc* Corresponde a nomes de chaves que começam com abc
key=*abc Corresponde a nomes de chaves que terminam com abc
key=*abc* Corresponde a nomes de chaves que contêm abc
key=abc,xyz Corresponde a nomes de chaves abc ou xyz (limitado a 5 CSV)
Filtro de etiquetas Efeito
label for omitida ou label= Corresponde a valores-chave sem rótulo
label=* Corresponde a qualquer rótulo
label=prod Corresponde ao rótulo prod
label=prod* Corresponde a rótulos que começam com prod
label=*prod Corresponde a rótulos que terminam com prod
label=*prod* Corresponde a rótulos que contêm prod
label=prod,test Corresponde a rótulos prod ou teste (limitado a 5 CSV)
Filtro de tags Efeito
tags for omitida ou tags= Corresponde a qualquer tag
tags=group=app1 Corresponde a valores-chave que têm uma tag nomeada group com valor app1
tags=group=app1&tags=env=prod Corresponde a valores-chave que têm uma tag nomeada group com value app1 e uma tag named env with value prod(limitada a 5 filtros de tag)
tags=tag1=%00 Corresponde a valores-chave que têm uma tag nomeada tag1 com valor null
tags=tag1= Corresponde a valores-chave que têm uma tag nomeada tag1 com valor vazio

Caracteres reservados

Os caracteres reservados são:

*, \, ,

Se um caractere reservado fizer parte do valor, ele deverá ser escapado usando \{Reserved Character}. Caracteres não reservados também podem ser escapados.

Validação do filtro

Se ocorrer um erro de validação de filtro, a resposta será HTTP 400 com detalhes do erro:

HTTP/1.1 400 Bad Request
Content-Type: application/problem+json; charset=utf-8
{
  "type": "https://azconfig.io/errors/invalid-argument",
  "title": "Invalid request parameter '{filter}'",
  "name": "{filter}",
  "detail": "{filter}(2): Invalid character",
  "status": 400
}

Exemplos

  • Todos:

    GET /revisions
    
  • Itens em que o nome da chave começa com abc:

    GET /revisions?key=abc*&api-version={api-version}
    
  • Itens em que o nome da chave é abc ou xyz e os rótulos contêm prod:

    GET /revisions?key=abc,xyz&label=*prod*&api-version={api-version}
    

Solicitar campos específicos

Use o parâmetro opcional $select de seqüência de caracteres de consulta e forneça uma lista separada por vírgulas de campos solicitados. Se o $select parâmetro for omitido, a resposta conterá o conjunto padrão.

GET /revisions?$select=value,label,last_modified&api-version={api-version} HTTP/1.1

Acesso baseado no tempo

Obter uma representação do resultado como era em um momento passado. Para obter mais informações, consulte HTTP Framework for Time-Based Access to Resource States -- Memento, seção 2.1.1.

GET /revisions?api-version={api-version} HTTP/1.1
Accept-Datetime: Sat, 12 May 2018 02:10:00 GMT

Resposta:

HTTP/1.1 200 OK
Content-Type: application/vnd.microsoft.appconfig.revs+json"
Memento-Datetime: Sat, 12 May 2018 02:10:00 GMT
Link: <{relative uri}>; rel="original"
{
    "items": [
        ....
    ]
}