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