Odpovědi HTTP pro dotazování nebo správu
Stav odpovědi
Stavový řádek odpovědi HTTP se řídí standardními kódy odpovědi HTTP. Například kód 200 označuje úspěch.
V současné době se používají následující stavové kódy, ale může se vrátit jakýkoli platný kód HTTP.
Kód | Podkód | Description |
---|---|---|
100 | Pokračovat | Klient může pokračovat v odesílání požadavku. |
200 | OK | Požadavek se úspěšně začal zpracovávat. |
400 | BadRequest | Požadavek je špatně vytvořený a selhal (trvale). |
401 | Neautorizováno | Klient se musí nejprve ověřit. |
403 | Forbidden | Žádost klienta byla zamítnuta. |
404 | NotFound | Požadavek odkazuje na neexistující entitu. |
413 | PayloadTooLarge | Datová část požadavku překročila limity. |
429 | TooManyRequests | Žádost byla zamítnuta kvůli omezování. |
504 | Časový limit | Vypršel časový limit požadavku. |
520 | Chyba služby | Služba zjistila chybu při zpracování požadavku. |
Poznámka
Stavový kód 200 ukazuje, že zpracování požadavku bylo úspěšně spuštěno, a ne že se úspěšně dokončilo. Selhání, ke kterým došlo během zpracování žádosti po vrácení stavového kódu 200, se nazývají "částečná selhání dotazů", a když k nim dojde, vkládají se do datového proudu odpovědi speciální indikátory, které klienta upozorní, že k nim došlo.
Hlavičky odpovědi
Vrátí se následující vlastní hlavičky.
Vlastní hlavička | Description |
---|---|
x-ms-client-request-id |
Jedinečný identifikátor požadavku odeslaný v hlavičce požadavku se stejným názvem nebo nějakým jedinečným identifikátorem. |
x-ms-activity-id |
Globálně jedinečný identifikátor korelace požadavku. Vytvořila ho služba. |
Text odpovědi
Pokud je stavový kód 200, text odpovědi je dokument JSON, který zakóduje výsledky dotazu nebo příkazu pro správu jako posloupnost obdélníkových tabulek. Podrobnosti najdete níže.
Poznámka
Posloupnost tabulek se odráží v sadě SDK. Například při použití knihovny Kusto.Data rozhraní .NET Framework se pak posloupnost tabulek stane výsledkem v objektu System.Data.IDataReader
vráceném sadou SDK.
Pokud stavový kód označuje chybu 4xx nebo 5xx jinou než 401, text odpovědi je dokument JSON, který zakóduje podrobnosti o selhání. Další informace najdete v pokynech k rozhraní Microsoft REST API.
Poznámka
Pokud hlavička Accept
není součástí požadavku, text odpovědi na chybu nemusí být nutně dokument JSON.
Kódování JSON sekvence tabulek
Kódování JSON sekvence tabulek je jeden kontejner vlastností JSON s následujícími páry název/hodnota.
Name | Hodnota |
---|---|
Tabulky | Pole kontejneru vlastností Tabulka. |
Kontejner vlastností Tabulka obsahuje následující páry název/hodnota.
Name | Hodnota |
---|---|
TableName | Řetězec, který identifikuje tabulku. |
Sloupce | Pole kontejneru vlastností Sloupec. |
Řádky | Jedná se o matici řádků. |
Kontejner vlastností Sloupec obsahuje následující dvojice název/hodnota.
Name | Hodnota |
---|---|
ColumnName | Řetězec, který identifikuje sloupec. |
DataType | Řetězec, který poskytuje přibližný typ .NET sloupce. |
ColumnType | Řetězec, který poskytuje skalární datový typ sloupce. |
Pole Řádek má stejné pořadí jako příslušné pole Sloupce.
Pole Řádek obsahuje také jeden prvek, který se shoduje s hodnotou řádku pro příslušný sloupec.
Skalární datové typy, které nelze reprezentovat ve formátu JSON, jako datetime
jsou a timespan
, jsou reprezentované jako řetězce JSON.
Následující příklad ukazuje jeden možný takový objekt, pokud obsahuje jednu tabulku s názvem Table_0
, která má jeden sloupec Text
typu string
a jeden řádek.
{
"Tables": [{
"TableName": "Table_0",
"Columns": [{
"ColumnName": "Text",
"DataType": "String",
"ColumnType": "string"
}],
"Rows": [["Hello, World!"]]
}
Další příklad:
Význam tabulek v odpovědi
Příkazy pro správu ve většině případů vrátí výsledek s jednou tabulkou obsahující informace vygenerované příkazem pro správu. Příkaz například .show databases
vrátí jednu tabulku s podrobnostmi o všech dostupných databázích v clusteru.
Dotazy obvykle vrací více tabulek. Pro každý příkaz tabulkového výrazu se vygeneruje jedna nebo více tabulek v pořadí, které představují výsledky vytvořené příkazem .
Poznámka
Kvůli operátorům dávek a forku může existovat více takových tabulek).
Často se vytvářejí tři tabulky:
Tabulka @ExtendedProperties , která poskytuje další hodnoty, například pokyny pro vizualizaci klienta (informace poskytované operátorem vykreslování), informace o efektivním kurzoru databáze dotazu nebo informace o efektivním využití mezipaměti výsledků dotazu dotazem.
U dotazů odeslaných pomocí protokolu v1 obsahuje tabulka jeden sloupec typu
string
, jehož hodnotou je řetězec kódovaný ve formátu JSON, například:Hodnota {"Vizualizace":"piechart",...} {"Kurzor":"637239957206013576"} U dotazů odeslaných pomocí protokolu v2 má tabulka tři sloupce: (1) Sloupec
integer
s názvemTableId
označující, na kterou tabulku v sadě výsledků se záznam vztahuje; (2) Sloupecstring
s názvemKey
označující druh informací poskytovaných záznamem (možné hodnoty:Visualization
,ServerCache
aCursor
); (3) Sloupecdynamic
s názvemValue
poskytující informace o klíči.Tableid Klíč Hodnota 1 ServerCache {"OriginalStartedOn":"2021-06-11T07:48:34.6201025Z",...} 1 Vizualizace {"Vizualizace":"piechart",...} Tabulka QueryStatus, která poskytuje další informace o spuštění samotného dotazu, například jestli se dotaz úspěšně dokončil nebo ne, a jaké prostředky dotaz spotřeboval.
Tato tabulka má následující strukturu:
Timestamp Závažnost Název závažnosti Statuscode Popis stavu Počet Requestid ID aktivity Id subactivity ClientActivityId 2020-05-02 06:09:12.7052077 4 Informace 0 Dotaz se úspěšně dokončil. 1 ... ... ... ... Hodnoty závažnosti 2 nebo menší značí selhání.
Tabulka TableOfContents, která je vytvořená jako poslední a obsahuje seznam ostatních tabulek ve výsledcích.
Příklad pro tuto tabulku:
Řádová číslovka Druh Name Id PrettyName 0 QueryResult Primárnívýsledek db9520f9-0455-4cb5-b257-53068497605a 1 QueryProperties @ExtendedProperties 908901f6-5319-4809-ae9e-009068c267c7 2 QueryStatus QueryStatus 00000000-0000-0000-0000-000000000000
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro