Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Prostředek snímku není k dispozici v rozhraní API verze 1.0.
Snímek je prostředek identifikovaný jedinečným názvem. Podívejte se na podrobnosti o jednotlivých operacích.
Operace
- Získat
- Vypsat více
- Vytvoření
- Archivovat/obnovit
- Výpis hodnot klíč-hodnota
Požadavky
- Všechny požadavky HTTP musí být ověřeny. Viz část ověřování.
- Všechny požadavky HTTP musí poskytovat explicitní
api-version. Viz část správa verzí.
Syntaxe
Snapshot
{
"etag": [string],
"name": [string],
"status": [string, enum("provisioning", "ready", "archived", "failed")],
"filters": [array<SnapshotFilter>],
"composition_type": [string, enum("key", "key_label")],
"created": [datetime ISO 8601],
"size": [number, bytes],
"items_count": [number],
"tags": [object with string properties],
"retention_period": [number, timespan in seconds],
"expires": [datetime ISO 8601]
}
SnapshotFilter
{
"key": [string],
"label": [string]
}
{
"key": [string],
"label": [string],
"tags": [array<string>]
}
Získání snímku
Povinné: {name}, {api-version}
GET /snapshots/{name}?api-version={api-version}
Odpovědi:
HTTP/1.1 200 OK
Content-Type: application/vnd.microsoft.appconfig.snapshot+json; charset=utf-8
Last-Modified: Mon, 03 Mar 2023 9:00:03 GMT
ETag: "4f6dd610dd5e4deebc7fbaef685fb903"
Link: </kv?snapshot=prod-2023-03-20&api-version={api-version}>; rel="items"
{
"etag": "4f6dd610dd5e4deebc7fbaef685fb903",
"name": "prod-2023-03-20",
"status": "ready",
"filters": [
{
"key": "*",
"label": null
}
],
"composition_type": "key",
"created": "2023-03-20T21:00:03+00:00",
"size": 2000,
"items_count": 4,
"tags": {
"t1": "value1",
"t2": "value2"
},
"retention_period": 7776000
}
Pokud snímek se zadaným názvem neexistuje, vrátí se následující odpověď:
HTTP/1.1 404 Not Found
Získání (podmíněně)
Pokud chcete zlepšit ukládání do mezipaměti klienta, použijte hlavičky požadavků nebo If-Match je použijteIf-None-Match. Argument etag je součástí reprezentace snímku. Další informace najdete v částech 14.24 a 14.26.
Následující požadavek načte snímek pouze v případě, že aktuální reprezentace neodpovídá zadanému etag:
GET /snapshots/{name}?api-version={api-version} HTTP/1.1
Accept: application/vnd.microsoft.appconfig.snapshot+json;
If-None-Match: "{etag}"
Odpovědi:
HTTP/1.1 304 NotModified
Nebo
HTTP/1.1 200 OK
Výpis snímků
Volitelné: name (Pokud není zadáno, znamená to jakýkoli název.) Volitelné: status (Pokud není zadáno, znamená to jakýkoli stav.)
GET /snapshots?name=prod-*&api-version={api-version} HTTP/1.1
Odpověď:
HTTP/1.1 200 OK
Content-Type: application/vnd.microsoft.appconfig.snapshotset+json; charset=utf-8
Další možnosti najdete v části Filtrování dále v tomto článku.
Stránkování
Výsledek se stránkuje, pokud počet vrácených položek překročí limit odpovědi. Postupujte podle volitelných Link hlaviček odpovědí a použijte rel="next" k navigaci.
Obsah také poskytuje další odkaz ve formě @nextLink vlastnosti. Propojený identifikátor URI obsahuje api-version argument.
GET /snapshots?api-version={api-version} HTTP/1.1
Odpověď:
HTTP/1.1 200 OK
Content-Type: application/vnd.microsoft.appconfig.snapshotset+json; charset=utf-8
Link: <{relative uri}>; rel="next"
{
"items": [
...
],
"@nextLink": "{relative uri}"
}
Filtrování
Podporuje se kombinace name a status filtrování.
Použijte volitelné name parametry řetězce dotazu a status parametry řetězce dotazu.
GET /snapshots?name={name}&status={status}&api-version={api-version}
Podporované filtry
| Filtr názvů | Účinnost |
|---|---|
name je vynechán nebo name=* |
Odpovídá snímkům s libovolným názvem. |
name=abc |
Odpovídá snímku s názvem abc. |
name=abc* |
Odpovídá snímkům s názvy, které začínají na abc. |
name=abc,xyz |
Odpovídá snímkům s názvy abc nebo xyz (omezeno na 5 CSV) |
| Filtr stavu | Účinnost |
|---|---|
status je vynechán nebo status=* |
Odpovídá snímkům se stavem |
status=ready |
Odpovídá snímkům se stavem připraveno |
status=ready,archived |
Odpovídá snímkům s připraveným nebo archivovaným stavem (omezený na 5 CSV) |
Rezervované znaky
*, , \,
Pokud je vyhrazený znak součástí hodnoty, musí být řídicí znak pomocí .\{Reserved Character} Nezarezervované znaky mohou být také řídicími znaky.
Ověření filtru
Pokud se ověření filtru nezdaří, odpověď je HTTP 400 s podrobnostmi o chybě:
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
}
Příklady
Všechny
GET /snapshots?api-version={api-version}Název snímku začíná abc
GET /snapshot?name=abc*&api-version={api-version}Název snímku začíná abc a stav se rovná připravenosti nebo archivaci.
GET /snapshot?name=abc*&status=ready,archived&api-version={api-version}
Zadání konkrétních polí
Použijte volitelný $select parametr řetězce dotazu a zadejte čárkami oddělený seznam požadovaných polí.
$select Pokud parametr vynecháte, odpověď obsahuje výchozí sadu.
GET /snapshot?$select=name,status&api-version={api-version} HTTP/1.1
Vytvořit snímek
parametry
| Název vlastnosti | Požaduje se | Výchozí hodnota | Ověřování |
|---|---|---|---|
| název | ano | Není k dispozici | Délka Maximum: 256 |
| Filtry | ano | Není k dispozici | Počítat Minimum: 1 Maximum: 3 |
| filters[<index>].key | ano | Není k dispozici | |
| filters[<index>].label | ne | nula | Filtry popisků s více shodami (například" "*", "čárka,oddělené") nejsou podporovány u typu "klíč" složení. |
| značky | ne | {} | |
| composition_type | ne | klíč | |
| retention_period | ne | Úrovně Standard a Premium 2592000 (30 dní) Úrovně Free a vývojářské úrovně 604800 (sedm dní) |
Úrovně Standard a Premium Minimum: 3600 (jedna hodina) Maximum: 7776000 (90 dní) Úrovně Free a vývojářské úrovně Minimum: 3600 (jedna hodina) Maximum: 604800 (sedm dní) |
PUT /snapshots/{name}?api-version={api-version} HTTP/1.1
Content-Type: application/vnd.microsoft.appconfig.snapshot+json
{
"filters": [ // required
{
"key": "app1/*", // required
"label": "prod" // optional
}
],
"tags": { // optional
"tag1": "value1",
"tag2": "value2",
},
"composition_type": "key", // optional
"retention_period": 2592000 // optional
}
Odpovědi:
HTTP/1.1 201 Created
Content-Type: application/vnd.microsoft.appconfig.snapshot+json; charset=utf-8
Last-Modified: Tue, 05 Dec 2017 02:41:26 GMT
ETag: "4f6dd610dd5e4deebc7fbaef685fb903"
Operation-Location: {appConfigurationEndpoint}/operations?snapshot={name}&api-version={api-version}
{
"etag": "4f6dd610dd5e4deebc7fbaef685fb903",
"name": "{name}",
"status": "provisioning",
"filters": [
{
"key": "app1/*",
"label": "prod"
}
],
"composition_type": "key",
"created": "2023-03-20T21:00:03+00:00",
"size": 0,
"items_count": 0,
"tags": {
"t1": "value1",
"t2": "value2"
},
"retention_period": 2592000
}
| Název vlastnosti | Požaduje se | Výchozí hodnota | Ověřování |
|---|---|---|---|
| název | ano | Není k dispozici | Délka Maximum: 256 |
| Filtry | ano | Není k dispozici | Počítat Minimum: 1 Maximum: 3 |
| filters[<index>].key | ano | Není k dispozici | |
| filters[<index>].label | ne | nula | Filtry popisků s více shodami (například" "*", "čárka,oddělené") nejsou podporovány u typu "klíč" složení. |
| filters[<index>].tags | ne | nula | Počítat Minimum: 0 Maximum: 5 |
| značky | ne | {} | |
| composition_type | ne | klíč | |
| retention_period | ne | Úroveň Standard 2592000 (30 dní) Úroveň Free 604800 (7 dní) |
Úroveň Standard Minimum: 3600 (1 hodina) Maximum: 7776000 (90 dní) Úroveň Free Minimum: 3600 (1 hodina) Maximum: 604800 (7 dní) |
PUT /snapshots/{name}?api-version={api-version} HTTP/1.1
Content-Type: application/vnd.microsoft.appconfig.snapshot+json
{
"filters": [ // required
{
"key": "app1/*", // required
"label": "prod", // optional
"tags": ["group=g1", "default=true"] // optional
}
],
"tags": { // optional
"tag1": "value1",
"tag2": "value2",
},
"composition_type": "key", // optional
"retention_period": 2592000 // optional
}
Odpovědi:
HTTP/1.1 201 Created
Content-Type: application/vnd.microsoft.appconfig.snapshot+json; charset=utf-8
Last-Modified: Tue, 05 Dec 2017 02:41:26 GMT
ETag: "4f6dd610dd5e4deebc7fbaef685fb903"
Operation-Location: {appConfigurationEndpoint}/operations?snapshot={name}&api-version={api-version}
{
"etag": "4f6dd610dd5e4deebc7fbaef685fb903",
"name": "{name}",
"status": "provisioning",
"filters": [
{
"key": "app1/*",
"label": "prod",
"tags": ["group=g1", "default=true"]
}
],
"composition_type": "key",
"created": "2023-03-20T21:00:03+00:00",
"size": 0,
"items_count": 0,
"tags": {
"t1": "value1",
"t2": "value2"
},
"retention_period": 2592000
}
Stav nově vytvořeného snímku je provisioning.
Po úplném zřízení snímku se stav aktualizuje na ready.
Klienti se mohou dotazovat na snímek, aby čekali, až bude snímek připravený, a teprve potom vypsat přidružené hodnoty klíče.
Pokud chcete zadat dotaz na další informace o operaci, přejděte do části vytvoření snímku dotazu.
Pokud snímek již existuje, vrátí se následující odpověď:
HTTP/1.1 409 Conflict
Content-Type: application/problem+json; charset=utf-8
{
"type": "https://azconfig.io/errors/already-exists",
"title": "The resource already exists.",
"status": 409,
"detail": ""
}
Vytvoření snímku dotazu
Odpověď požadavku na vytvoření snímku vrátí hlavičku Operation-Location .
Odpovědi:
HTTP/1.1 201 Created
...
Operation-Location: {appConfigurationEndpoint}/operations?snapshot={name}&api-version={api-version}
Stav operace zřizování snímků najdete v identifikátoru URI obsaženém v Operation-Location.
Klienti se mohou dotazovat na tento stavový objekt, aby se zajistilo, že je snímek zřízený před výpisem přidružených hodnot klíče.
GET {appConfigurationEndpoint}/operations?snapshot={name}&api-version={api-version}
Odpověď:
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"id": "{id}",
"status": "Succeeded",
"error": null
}
Pokud během zřizování snímku dojde k nějaké chybě, error vlastnost obsahuje podrobnosti popisující chybu.
{
"id": "{name}",
"status": "Failed",
"error": {
"code": "QuotaExceeded",
"message": "The allotted quota for snapshot creation has been surpassed."
}
}
Archiv (oprava)
Snímek ve ready stavu je možné archivovat.
Archivovaný snímek má přiřazené datum vypršení platnosti na základě doby uchovávání informací stanoveného v okamžiku jejího vytvoření.
Po uplynutí data vypršení platnosti se snímek trvale odstraní.
Položky snímku se dají kdykoli před datem vypršení platnosti zobrazit.
Archivace snímku, který už archived nemá vliv na snímek.
- Povinné:
{name},{status},{api-version}
PATCH /snapshots/{name}?api-version={api-version} HTTP/1.1
Content-Type: application/vnd.microsoft.appconfig.snapshot+json
{
"status": "archived"
}
Odpověď: Vrácení archivovaného snímku
HTTP/1.1 200 OK
Content-Type: application/vnd.microsoft.appconfig.snapshot+json; charset=utf-8
...
{
"etag": "33a0c9cdb43a4c2cb5fc4c1feede1c68",
"name": "{name}",
"status": "archived",
...
"expires": "2023-08-11T21:00:03+00:00"
}
Archivace snímku, který je aktuálně ve stavu nebo provisioning ve failed stavu, je neplatná operace.
Odpověď:
HTTP/1.1 409 Conflict
Content-Type: application/problem+json; charset="utf-8"
{
"type": "https://azconfig.io/errors/invalid-state",
"title": "Target resource state invalid.",
"detail": "The target resource is not in a valid state to perform the requested operation.",
"status": 409
}
Obnovení (oprava)
Snímek ve archived stavu lze obnovit.
Po obnovení snímku se odebere datum vypršení platnosti snímku.
Obnovení snímku, který už ready nemá vliv na snímek
- Povinné:
{name},{status},{api-version}
PATCH /snapshots/{name}?api-version={api-version} HTTP/1.1
Content-Type: application/vnd.microsoft.appconfig.snapshot+json
{
"status": "ready"
}
Odpověď: Vrácení obnoveného snímku
HTTP/1.1 200 OK
Content-Type: application/vnd.microsoft.appconfig.snapshot+json; charset=utf-8
...
{
"etag": "90dd86e2885440f3af9398ca392095b9",
"name": "{name}",
"status": "ready",
...
}
Obnovení snímku, který je aktuálně ve stavu nebo provisioning ve failed stavu, je neplatná operace.
Odpověď:
HTTP/1.1 409 Conflict
Content-Type: application/problem+json; charset="utf-8"
{
"type": "https://azconfig.io/errors/invalid-state",
"title": "Target resource state invalid.",
"detail": "The target resource is not in a valid state to perform the requested operation.",
"status": 409
}
Archivace/obnovení snímku (podmíněně)
Pokud chcete zabránit podmínkám časování, použijte If-Match hlavičky požadavků nebo If-None-Match jejich hlavičky. Argument etag je součástí reprezentace snímku.
Pokud If-Match je operace vynechána nebo If-None-Match je vynechána, je nepodmíněná.
Následující odpověď aktualizuje prostředek pouze v případě, že aktuální reprezentace odpovídá zadanému etag:
PATCH /snapshots/{name}?api-version={api-version} HTTP/1.1
Content-Type: application/vnd.microsoft.appconfig.snapshot+json
If-Match: "4f6dd610dd5e4deebc7fbaef685fb903"
Následující odpověď aktualizuje prostředek pouze v případě, že aktuální reprezentace neodpovídá zadanému etag:
PATCH /snapshots/{name}?api-version={api-version} HTTP/1.1
Content-Type: application/vnd.microsoft.appconfig.snapshot+json;
If-None-Match: "4f6dd610dd5e4deebc7fbaef685fb903"
Odezvy
HTTP/1.1 200 OK
Content-Type: application/vnd.microsoft.appconfig.snapshot+json; charset=utf-8
...
Nebo
HTTP/1.1 412 PreconditionFailed
Výpis hodnot klíče snímku
Povinné: {name}, {api-version}
GET /kv?snapshot={name}&api-version={api-version}
Poznámka:
Při pokusu o výpis položek snímku, který není ve stavu nebo ready ve archived stavu, bude výsledkem prázdná odpověď na seznam.
Zadání konkrétních polí
Použijte volitelný $select parametr řetězce dotazu a zadejte čárkami oddělený seznam požadovaných polí.
$select Pokud parametr vynecháte, odpověď obsahuje výchozí sadu.
GET /kv?snapshot={name}&$select=key,value&api-version={api-version} HTTP/1.1