Bagikan melalui


Revisi nilai kunci

Revisi nilai kunci mendefinisikan representasi historis sumber daya bernilai kunci. Revisi berakhir setelah 7 hari untuk toko tingkat gratis, atau 30 hari untuk toko tingkat Standar. Revisi mendukung operasi List.

Untuk semua operasi, key adalah parameter opsional. Jika dihilangkan, itu menyiratkan kunci apa pun.

Untuk semua operasi, label adalah parameter opsional. Jika dihilangkan, itu menyiratkan label apa pun.

Prasyarat

  • Semua permintaan HTTP harus diautentikasi. Lihat bagian autentikasi.
  • Semua permintaan HTTP harus menyediakan eksplisit api-version. Lihat bagian penerapan versi.

Daftar revisi

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

Respons:

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}"
}

Penentuan halaman

hasilnya akan ditentukan halaman jika jumlah item yang dikembalikan melebihi batas respons. Ikuti header respons opsional Link dan gunakan rel="next" untuk navigasi. Atau konten menyediakan tautan berikutnya dalam bentuk properti @nextLink.

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

Respons:

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}"
}

Subkumpulan revisi daftar

Gunakan header permintaan Range. Respons berisi header Content-Range. Jika server tidak dapat memenuhi rentang yang diminta, server merespons dengan HTTP 416 (RangeNotSatisfiable).

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

Respons

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

Filter

Kombinasi pemfilteran key dan label didukung. Gunakan parameter string kueri key dan label opsional.

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

Kombinasi key, label dan tags pemfilteran didukung. Gunakan parameter string kueri opsional key, label dan tags . Beberapa filter tag dapat disediakan sebagai parameter string kueri dalam tagName=tagValue format . Filter tag harus sama persis.

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

Filter yang didukung

Filter kunci Efek
key dihilangkan atau key=* Mencocokan setiap kunci
key=abc Cocok dengan kunci bernama abc
key=abc* Cocok dengan nama kunci yang dimulai dengan abc
key=*abc Cocok dengan nama kunci yang diakhiri dengan abc
key=*abc* Cocok dengan nama kunci yang berisi abc
key=abc,xyz Cocok dengan nama kunci abc atau xyz (terbatas pada 5 CSV)
Filter label Efek
label dihilangkan atau label= Cocok dengan nilai kunci tanpa label
label=* Cocok dengan label apa pun
label=prod Cocok dengan prod label
label=prod* Cocok dengan label yang dimulai dengan prod
label=*prod Cocok dengan label yang diakhiri dengan prod
label=*prod* Cocok dengan label yang berisi prod
label=prod,test Cocok dengan prod label atau pengujian (terbatas pada 5 CSV)
Filter tag Efek
tags dihilangkan atau tags= Cocok dengan tag apa pun
tags=group=app1 Cocok dengan nilai kunci yang memiliki tag bernama group dengan nilai app1
tags=group=app1&tags=env=prod Cocok dengan nilai kunci yang memiliki tag bernama group dengan nilai app1 dan tag bernama env dengan nilai prod(terbatas pada 5 filter tag)
tags=tag1=%00 Cocok dengan nilai kunci yang memiliki tag bernama tag1 dengan nilai null
tags=tag1= Cocok dengan nilai kunci yang memiliki tag bernama tag1 dengan nilai kosong

Karakter khusus

Karakter khusus adalah:

*, , \,

Jika karakter khusus adalah bagian dari nilai, karakter harus lolos menggunakan \{Reserved Character}. Karakter tidak khusus juga dapat hilang.

Validasi filter

Jika kesalahan validasi filter terjadi, responsnya adalah HTTP 400 dengan detail kesalahan:

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
}

Contoh

  • Semua:

    GET /revisions
    
  • Item di mana nama kunci dimulai dengan abc:

    GET /revisions?key=abc*&api-version={api-version}
    
  • Item di mana nama kunci adalah abc atau xyz, dan label berisi prod:

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

Bidang khusus permintaan

Gunakan parameter string kueri opsional $select dan berikan daftar bidang yang diminta yang dipisahkan koma. Jika parameter $select dihilangkan, respons berisi set default.

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

Akses berbasis waktu

Dapatkan representasi hasil seperti pada waktu yang lalu. Untuk informasi selengkapnya, lihat HTTP Framework untuk Time-Based ke Resource States -- Memento, bagian 2.1.1.

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

Respons:

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": [
        ....
    ]
}