Sdílet prostřednictvím


Generátor rozhraní Data API (preview)

Rozšíření MSSQL pro Visual Studio Code obsahuje integrované uživatelské rozhraní pro tvůrce rozhraní Data API, takže můžete vytvářet koncové body REST, GraphQL a MCP pro tabulky databáze SQL bez nutnosti zapisovat konfigurační soubory nebo opustit Visual Studio Code. Můžete vybrat, které tabulky se mají zveřejnit, nakonfigurovat oprávnění CRUD, zvolit typy rozhraní API, zobrazit náhled vygenerované konfigurace a nasadit místní back-end, který využívá Tvůrce rozhraní Data API, a to vše z vizuálního rozhraní.

Snímek obrazovky s uživatelským rozhraním Tvůrce dat se seznamem entit a zaškrtávacími políčky CRUD v editoru Visual Studio Code

Návod

Tvůrce rozhraní DATA API je aktuálně ve verzi Preview a může se změnit na základě zpětné vazby. Připojte se ke komunitě v diskuzích Na GitHubu a sdílejte nápady nebo nahlašujte problémy.

Důležité

Tato funkce má známá omezení, včetně podpory pouze ověřování SQL pro nasazení kontejneru a omezenou kompatibilitu datových typů. Před nasazením si projděte známá omezení a známé problémy .

Features

Integrace tvůrce rozhraní Data API nabízí tyto možnosti:

  • Vyberte databázové entity (tabulky), které se mají zveřejnit jako koncové body rozhraní API uspořádané podle schématu s sbalitelným seskupením.
  • Pro každou entitu můžete nezávisle nakonfigurovat oprávnění k vytvoření, čtení, aktualizaci a odstranění (CRUD).
  • Zvolte typy rozhraní API, které chcete vygenerovat: REST, GraphQL, MCP nebo libovolnou kombinaci.
  • Nakonfigurujte upřesňující nastavení entit, včetně vlastních cest REST, vlastních názvů typů GraphQL a autorizačních rolí.
  • Zobrazte náhled vygenerované konfigurace JSON pro tvůrce Data API na panelu definice jen pro čtení.
  • Nasaďte Tvůrce rozhraní Data API místně jako kontejner Dockeru s automatizovanými kontrolami předpokladů.
  • Otestujte spuštěná rozhraní API přímo v editoru Visual Studio Code pomocí integrovaného jednoduchého prohlížeče.
  • Pomocí chatu GitHub Copilot můžete konfigurovat entity prostřednictvím výzev přirozeného jazyka.

Předpoklady

Před použitím tvůrce rozhraní Data API se ujistěte, že jsou splněny následující požadavky:

Tvůrce rozhraní Data API

Konfigurační zobrazení tvůrce rozhraní Data API můžete otevřít ze dvou vstupních bodů:

  • V Průzkumníku objektů: Klikněte pravým tlačítkem na uzel databáze a vyberte Rozhraní API pro sestavení dat (Preview)....

    Snímek obrazovky se zobrazením konfigurace tvůrce dat se seznamem entit a zaškrtávacími políčky CRUD v editoru Visual Studio Code

  • V Návrháři schématu: Vyberte tlačítko Rozhraní API návrhu (tlačítko v pravém horním rohu panelu nástrojů) nebo vyberte ikonu back-endu na levém panelu.

    Snímek obrazovky s tlačítkem API návrhu a ikonou backendu v panelu nástrojů Návrhář schémat.

Otevře se konfigurační zobrazení Tvůrce dat, zobrazí entity databáze, možnosti typu rozhraní API a ovládací prvky konfigurace.

Výběr entit

Zobrazení výběru entity obsahuje seznam všech tabulek z připojené databáze seskupené podle schématu.

  • Každý řádek schématu je sbalitelný a zobrazuje odznáček počtu, který označuje, kolik entit je povolených (například 3/5).
  • Zaškrtnutím políčka na úrovni schématu můžete přepnout všechny entity v daném schématu. Zaškrtávací políčko podporuje třístavový výběr: vše, žádné nebo smíšené.
  • Každý řádek entity se zobrazí: zaškrtávací políčko povolit, název entity, zdrojovou tabulku, zaškrtávací políčka CRUD a tlačítko nastavení.
  • Zakázání entity změní jeho řádek na šedou barvu a zneaktivní zaškrtávací políčka CRUD a tlačítko nastavení.

Pomocí pole filtru v horní části můžete hledat entity podle názvu, schématu nebo zdrojové tabulky. Filtr nerozlišuje malá a velká písmena a počet povolených se aktualizuje na základě filtrovaných výsledků.

Snímek obrazovky s polem filtru entit s hledaným termínem filtrujícím seznam entit

Konfigurace oprávnění a typů rozhraní API

Oprávnění CRUD

Přepněte jednotlivá zaškrtávací políčka Vytvořit, Číst, Aktualizovat a Odstranit pro každou entitu. Zaškrtávací políčka CRUD na úrovni záhlaví umožňují přepínání této akce pro všechny povolené entity a podporují třístavový výběr.

Výběr typu rozhraní API

V horní části zobrazení konfigurace vyberte typy rozhraní API, které chcete vygenerovat:

  • REST API: Vygeneruje koncové body REST s uživatelským rozhraním Swagger pro testování.
  • GraphQL: Generuje GraphQL koncové body v rozhraní Nitro GraphQL playground.
  • MCP (Preview): Generuje koncové body protokolu kontextu modelu.
  • Vše: Vybere nebo zruší výběr všech typů rozhraní API.

Vyberte aspoň jeden typ rozhraní API.

Snímek obrazovky s zaškrtávacími políčky REST API, GraphQL, MCP a All v horní části zobrazení konfigurace Tvůrce rozhraní Data API

Pokročilá konfigurace entity

Výběrem ikony ozubeného kolečka na řádku entity otevřete dialogové okno Upřesnit konfiguraci entity , kde můžete nakonfigurovat:

  • Název entity: Název použitý v trasách a odpovědích rozhraní API (výchozí hodnota je název tabulky).
  • Autorizační role: Přepnutí mezi anonymním (nevyžaduje se ověřování) a Ověřeno (vyžaduje ověření uživatele).
  • Vlastní cesta REST: Volitelné přepsání výchozí api/entityName cesty.
  • Vlastní typ GraphQL: Volitelné přepsání výchozího názvu typu GraphQL

Výběrem možnosti Použít změny uložíte konfiguraci, nebo Zrušit zrušíte změny.

Snímek obrazovky dialogového okna Pokročilá konfigurace entity zobrazující Název entity, Autorizační roli, Vlastní cestu REST a pole Vlastní typ GraphQL.

Konfigurace náhledu

Výběrem tlačítka Konfigurace zobrazení na panelu nástrojů otevřete panel Definice v dolní části konfiguračního zobrazení. Tento panel zobrazuje vygenerovaný konfigurační soubor JSON tvůrce rozhraní Data API ve formátu jen pro čtení.

Panel definice

  • Odráží výběr aktuální entity, typy rozhraní API a upřesňující nastavení.
  • Udržuje synchronizaci s uživatelským rozhraním a chatem GitHub Copilot, změny provedené na obou místech okamžitě aktualizují náhled.
  • Zahrnuje pouze povolené entity ve výstupu konfigurace.
  • Zobrazuje části modulu runtime pro REST, GraphQL a MCP podle vybraných typů rozhraní API.

Výběrem možnosti Otevřít v editoru zobrazíte konfiguraci na celé kartě editoru Visual Studio Code. Výběrem možnosti Kopírovat zkopírujte konfiguraci do schránky.

Snímek obrazovky s panelem Definice zobrazující vygenerovanou konfiguraci JSON tvůrce rozhraní Data API s tlačítky Otevřít v editoru a Kopírování

Místní nasazení pomocí Dockeru

Tvůrce rozhraní Data API se nasadí jako místní kontejner Dockeru. Průvodce nasazením vás provede procesem:

  1. Na panelu nástrojů vyberte tlačítko Nasadit .

  2. Otevře se dialogové okno Nasadit kontejner DAB s popisem nasazení místního kontejneru. Zvolte Další.

    Snímek obrazovky s dialogovým oknem Nasazení kontejneru DAB s popisem nasazení místního kontejneru

  3. Obrazovka Getting Docker Ready spouští kontroly předpokladů postupně.

    • Kontrola instalace Dockeru: Ověřuje, že je do vašeho systému nainstalovaný Docker.
    • Spuštění Docker Desktopu: Zajišťuje, že je spuštěná aplikace Docker Desktop.
    • Kontrola modulu Dockeru: Ověřuje, jestli je modul Docker připravený.

    Snímek obrazovky s kontrolami předpokladů Dockeru spuštěnými postupně

    Po dokončení všech kontrol vyberte Další .

    Snímek obrazovky s úspěšně dokončenou kontrolou předpokladů Dockeru

  4. Zobrazí se obrazovka Nastavení kontejneru :

    • Název kontejneru: Volitelný název kontejneru Dockeru (je zadaný automaticky vygenerovaný výchozí název).
    • Port: Port pro zveřejnění rozhraní API (výchozí: 5000).
    • Kontejner znovu použije připojovací řetězec z aktivního databázového připojení.

    Vyberte Vytvořit kontejner.

    Snímek obrazovky Nastavení kontejneru s poli Název kontejneru a Port

  5. Nasazení provede tři kroky postupně: stažení image, spuštění kontejneru a kontrola připravenosti.

    Snímek obrazovky s průběhem nasazení zobrazující kroky vytvoření kontejneru

  6. Po úspěšném nasazení průvodce zobrazí adresy URL koncových bodů pro každý povolený typ rozhraní API:

    Typ rozhraní API Koncový bod Action
    REST http://localhost:{port}/api Zobrazení Swaggeru otevře uživatelské rozhraní Swaggeru.
    GraphQL http://localhost:{port}/graphql Nitro otevře hřiště GraphQL
    MCP http://localhost:{port}/mcp Přidej do VS Code zapíše konfiguraci serveru MCP do .vscode/mcp.json

    Výběrem libovolného odkazu otevřete testovací rozhraní v integrovaném editoru Simple Browser v editoru Visual Studio Code.

    Snímek obrazovky s dokončenou instalací, který ukazuje, že běží kontejner Data API Builder s adresami URL koncových bodů.

    Následující příklad ukazuje uživatelské rozhraní Swagger pro testování koncových bodů REST přímo v editoru Visual Studio Code:

    Snímek obrazovky s uživatelským rozhraním Swagger pro koncové body REST v editoru Visual Studio Code Simple Browser

    Následující příklad ukazuje hřiště Nitro GraphQL pro testování dotazů GraphQL a mutací:

    Screenshot of the Nitro GraphQL playground in the Visual Studio Code Simple Browser.Snímek obrazovky hřiště Nitro GraphQL v editoru Visual Studio Code Simple Browser.

Testování spuštěného rozhraní API

Po nasazení můžete rozhraní API otestovat přímo z dialogového okna dokončení nasazení pomocí integrovaného nástroje Simple Browser v editoru Visual Studio Code.

REST API

Výběrem Zobrazit Swagger otevřete Swagger UI, interaktivní vizuální rozhraní pro zkoumání a testování koncových bodů REST. Můžete procházet dostupné entity, zobrazovat schémata požadavků a odpovědí a spouštět volání rozhraní API přímo.

Tvůrce rozhraní Data API vygeneruje pro každou povolenou entitu následující koncové body REST:

Metoda Koncový bod Description
GET /api/{entity} Výpis všech záznamů pro entitu
GET /api/{entity}/{primaryKey}/{value} Získání jednoho záznamu podle primárního klíče
POST /api/{entity} Vytvoření nového záznamu
PUT /api/{entity}/{primaryKey}/{value} Nahrazení existujícího záznamu
PATCH /api/{entity}/{primaryKey}/{value} Aktualizace konkrétních polí záznamu
DELETE /api/{entity}/{primaryKey}/{value} Odstranění záznamu

Další informace o koncových bodech REST najdete v tématu Data API builder REST API.

GraphQL

Vyberte Nitro a otevřete hřiště Nitro GraphQL, kde můžete interaktivně psát a testovat dotazy GraphQL a mutaci.

Pro více informací o koncových bodech GraphQL naleznete v Data API builder GraphQL API.

MCP

Vyberte Přidat do VS Code, abyste do .vscode/mcp.json zapsali konfiguraci serveru MCP. Tato konfigurace zpřístupňuje koncový bod Tvůrce rozhraní Data API jako server MCP v editoru Visual Studio Code. Nástroje AI, jako je GitHub Copilot, pak můžou pracovat s vaší databází prostřednictvím rozhraní API pro tvůrce dat.

Další informace o MCP v editoru Visual Studio Code naleznete v tématu Použití serverů MCP v nástroji Visual Studio Code.

Testování terminálu

Koncové body můžete testovat také z terminálu:

REST API:

Získání všech záznamů z konkrétní entity:

curl http://localhost:{port}/api/{entityName}

Vytvoření nového záznamu (pokud je povolené oprávnění k vytvoření):

curl -X POST http://localhost:{port}/api/{entityName} \
  -H "Content-Type: application/json" \
  -d '{"Column1": "Value1", "Column2": "Value2"}'

GraphQL:

curl -X POST http://localhost:{port}/graphql \
  -H "Content-Type: application/json" \
  -d '{"query": "{ {entityName} { items { Column1 Column2 } } }"}'

Návod

Nahraďte {port} portem, který jste nakonfigurovali během nasazení (výchozí nastavení: 5000).

Integrace GitHub Copilotu

Pro vývojáře, kteří dávají přednost přirozenému jazyku, je GitHub Copilot integrovaný do prostředí tvůrce rozhraní Data API. Výběrem tlačítka Chat na panelu nástrojů otevřete chatovací relaci GitHub Copilot omezenou na kontext konfigurace nástroje pro vytváření rozhraní Data API. GitHub Copilot a uživatelské rozhraní zůstávají synchronizované: změny provedené prostřednictvím chatu se okamžitě projeví v uživatelském rozhraní a naopak.

Tady je několik ukázkových výzev:

  • "Enable all SalesLT entities for read operations"
  • "Expose only the Customer and Product tables with full CRUD permissions"
  • "Set all entities in the dbo schema to read-only"
  • "Disable the BuildVersion and ErrorLog entities"
  • "Can you also enable MCP for the Data API builder API?"

Následující příklad ukazuje GitHub Copilot povolující entity a konfiguraci oprávnění CRUD prostřednictvím výzvy chatu:

Snímek obrazovky GitHub Copilotu s povolením entit a nastavením oprávnění CRUD prostřednictvím výzvy přirozeného jazyka v chatu Tvůrce rozhraní Data API

Následující příklad ukazuje, jak GitHub Copilot povoluje koncové body MCP pro konfiguraci Tvůrce rozhraní API pro data:

Snímek obrazovky GitHub Copilotu s povolením koncových bodů MCP prostřednictvím výzvy v přirozeném jazyce v chatu Data API builder

Poznámka:

Integrace GitHub Copilotu vyžaduje instalaci a přihlášení rozšíření GitHub Copilot a GitHub Copilot Chat. Pokyny k nastavení najdete v tématu Nastavení GitHub Copilotu.

Známá omezení

  • Pouze tabulky: Uživatelské rozhraní konfigurace podporuje pouze tabulky. Zobrazení a uložené procedury nejsou zatím v návrhovém nástroji k dispozici.
  • Vyžaduje se Docker Desktop: Místní nasazení vyžaduje instalaci a spuštění Docker Desktopu.
  • Pouze ověřování SQL: Místní kontejnery Dockeru nepodporují metody ověřování Microsoft Entra ID, například , protože ActiveDirectoryInteractiveprostředí kontejneru nemůže otevřít prohlížeč pro interaktivní tok přihlašování. Rozšíření zobrazí oznámení, pokud vaše aktuální připojení používá nepodporovaný typ ověřování.
  • Databáze SQL v Microsoft Fabric není podporovaná: Databáze SQL v Microsoft Fabric vyžaduje výhradně ověřování Microsoft Entra a nepodporuje ověřování SQL. Vzhledem k tomu, že nasazení místního kontejneru vyžaduje ověřování SQL, není nasazení do SQL databáze ve Fabric realizovatelný scénář.
  • Vyžaduje se primární klíč: Každá entita tabulky vystavená prostřednictvím Tvůrce rozhraní Data API musí mít definované omezení primárního klíče na úrovni databáze. Tabulky bez primárního klíče způsobují selhání modulu tvůrce rozhraní Data API při spuštění.
  • Měl by se zkontrolovat výstup vygenerovaný pomocí AI: GitHub Copilot může způsobit nesprávné nebo neoptimální konfigurace. Před nasazením vždy zkontrolujte vygenerované konfigurace.

Známé problémy

  • Nepodporované datové typy SQL Serveru: Tvůrce rozhraní DATA API nemůže serializovat určité datové typy SQL Serveru. Tabulky obsahující sloupce s nepodporovanými typy můžou způsobit selhání modulu při spuštění. Nepodporované typy zahrnují geography, , geometryhierarchyid, rowversion, , sql_variant, a xml. Rozšíření označí ovlivněné entity ikonou upozornění a zabrání jejich výběru pro nasazení. Nejnovější informace o podpoře datových typů najdete v tématu Problém GitHubu č. 3181.
  • Interaktivní ověřování Microsoft Entra ID není podporováno pro nasazení kontejneru: Kontejner Tvůrce rozhraní Data API nemůže provádět interaktivní ověřování Microsoft Entra. Připojení pomocí interaktivních metod MICROSOFT Entra ID jsou blokována oznámením. Další informace najdete v tématu Problém GitHubu č. 3246.
  • MCP je v ukázkové verzi: Prostředí MCP pro Data API builder je aktuálně v ukázkové verzi. Další informace najdete v tématu Tvůrce rozhraní DATA API MCP Preview.

Názory a podpora

Pokud máte nápady, zpětnou vazbu nebo chcete zapojit komunitu, připojte se k diskuzi na adrese https://aka.ms/vscode-mssql-discussions. Pokud chcete nahlásit chybu, navštivte https://aka.ms/vscode-mssql-bugstránku . Pokud chcete požádat o novou funkci, přejděte na https://aka.ms/vscode-mssql-feature-request.