Odpověď HTTP pro dotazy nebo správu

Přepněte služby pomocí rozevíracího seznamu Verze . Přečtěte si další informace o navigaci.
Platí pro: ✅ Microsoft Fabric ✅ Azure Data Explorer

Stav odpovědi

Stavový řádek odpovědi HTTP se řídí standardními kódy odpovědí HTTP. Například kód 200 označuje úspěch.

Aktuálně se používají následující stavové kódy, i když se může vrátit jakýkoli platný kód HTTP.

Code Podkód Description
100 Pokračovat Klient může pokračovat v odesílání požadavku.
200 OK Požadavek začal úspěšně zpracovávat.
400 Špatný požadavek Požadavek je špatně vytvořen a selhal (trvale).
401 Neautorizováno Klient se musí nejdřív ověřit.
403 Zakázáno Požadavek klienta je odepřen.
404 Nenalezeno Požadavek odkazuje na neexistující entitu.
413 PayloadTooLarge Datová část požadavku překročila limity.
429 Příliš mnoho požadavků Žádost byla zamítnuta kvůli omezování.
504 Přerušení zápasu Vypršel časový limit požadavku.
520 Chyba služby Služba našla 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 bylo úspěšně dokončeno. Chyby, ke kterým došlo během zpracování požadavku po vrácení stavového kódu 200, se nazývají "částečná selhání dotazů", a když dojde k jejich zobrazení, do datového proudu odpovědí se vloží speciální indikátory, které upozorní klienta, ž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 pro požadavek. Služba ji vytvořila.

Obsah odpovědi

Pokud je stavový kód 200, text odpovědi je dokument JSON, který kó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. Pokud například používáte knihovnu Kusto.Data rozhraní .NET Framework, posloupnost tabulek se pak stane výsledkem objektu System.Data.IDataReader vráceného sadou SDK.

Pokud stavový kód označuje chybu 4xx nebo 5xx kromě 401, text odpovědi je dokument JSON, který kóduje podrobnosti o selhání. Další informace najdete v tématu Microsoft REST API Guidelines.

Poznámka:

Pokud hlavička Accept není součástí požadavku, text odpovědi selhání nemusí nutně obsahovat dokument JSON.

Kódování JSON posloupnosti tabulek

Kódování JSON sekvence tabulek je jedna taška vlastností JSON s následujícími páry name/value.

Název Hodnota
Tables Pole kontejneru vlastností Tabulka.

Taška vlastností Table obsahuje následující páry název/hodnota.

Název Hodnota
TableName Řetězec, který identifikuje tabulku.
Columns Pole kontejneru vlastností Sloupec.
Řádky Jedná se o matici řádku.

Taška vlastností Column obsahuje následující páry název/hodnota.

Název Hodnota
ColumnName Řetězec, který identifikuje sloupec.
datový typ Řetězec, který poskytuje přibližný typ .NET sloupce.
Typ sloupce Řetězec, který poskytuje skalární datový typ sloupce.

Matice řádků má stejné pořadí jako odpovídající pole sloupců. Matice řádků má také jeden prvek, který odpovídá hodnotě řádku pro příslušný sloupec. Skalární datové typy, které nelze reprezentovat ve formátu JSON, například datetime a timespan, jsou reprezentovány jako řetězce JSON.

Následující příklad ukazuje jeden možný takový objekt, když obsahuje jednu tabulku, Table_0 která má jeden sloupec Text typu stringa jeden řádek.

{
    "Tables": [{
        "TableName": "Table_0",
        "Columns": [{
            "ColumnName": "Text",
            "DataType": "String",
            "ColumnType": "string"
        }],
        "Rows": [["Hello, World!"]]
}

Další příklad:

Snímek obrazovky znázorňující stromové zobrazení souboru JSON, který obsahuje pole objektů Tabulky

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 databázích s podporou přístupnosti.

Dotazy obecně vracejí 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 dávkám a forkům 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 poskytnuté operátorem vykreslování), informace o efektivním kurzoru databáze dotazu nebo informace o efektivním použití mezipaměti výsledků dotazu.

    U dotazů odesílaných pomocí protokolu v1 má tabulka jeden sloupec typu string, jehož hodnota je řetězec kódovaný ve formátu JSON, například:

    Hodnota
    {"Vizualizace":"piechart",...}
    {"Cursor":"637239957206013576"}

    U dotazů odeslaných pomocí protokolu v2 má tabulka tři sloupce: (1) integer Sloupec označující TableId tabulku v sadě výsledků, na kterou se záznam vztahuje; (2) string Sloupec Key označující druh informací poskytnutých záznamem (možné hodnoty: Visualization, ServerCachea Cursor); (3) dynamic Sloupec, který se nazývá Value poskytnutí informací určených klíčem.

    TableId Key Hodnota
    1 ServerCache {"OriginalStartedOn":"2021-06-11T07:48:34.6201025Z",...}
    1 Vizualizace {"Vizualizace":"piechart",...}
  • Tabulka QueryStatus, která poskytuje další informace o provádění samotného dotazu, například pokud byl úspěšně dokončen nebo ne, a o prostředcích spotřebovaných dotazem.

    Tato tabulka má následující strukturu:

    Časová značka Závažnost Název závažnosti kód stavu Popis stavu Počet ID Žádosti Identifikátor aktivity SubActivityId ClientActivityId
    2020-05-02 06:09:12.7052077 4 Informace 0 Dotaz byl úspěšně dokončen. 1 ... ... ... ...

    Hodnoty závažnosti 2 nebo menší označují selhání.

  • Tabulka TableOfContents, která se vytvoří jako poslední, a zobrazí seznam ostatních tabulek ve výsledcích.

    Příkladem této tabulky je:

    Pořadový Druh Název identifikační číslo PrettyName
    0 QueryResult PrimaryResult db9520f9-0455-4cb5-b257-53068497605a
    1 QueryProperties @ExtendedProperties 908901f6-5319-4809-ae9e-009068c267c7
    2 Stav dotazu Stav dotazu 00000000-0000-0000-0000-000000000000