Rychlý start: Použití Tvůrce rozhraní DATA API s NoSQL
V tomto rychlém startu sestavíte sadu konfiguračních souborů Tvůrce rozhraní DATA API pro cílení na emulátor služby Azure Cosmos DB for NoSQL.
Požadavky
- Docker
- .NET 8
- Klient pro správu dat
- Pokud nemáte nainstalovaného klienta, nainstalujte Azure Data Studio.
Tip
Případně můžete otevřít tento rychlý start v GitHub Codespaces se všemi nainstalovanými požadavky pro vývojáře. Jednoduše si přineste vlastní předplatné Azure. Účty GitHubu zahrnují nárok na úložiště a základní hodiny bez poplatků. Další informace najdete v tématu zahrnuté hodiny úložiště a základní doby pro účty GitHubu.
Instalace rozhraní příkazového řádku Tvůrce rozhraní api dat
Microsoft.DataApiBuilder
Nainstalujte balíček z NuGetu jako nástroj .NET.
Použijte
dotnet tool install
k instalaci nejnovější verze nástrojeMicrosoft.DataApiBuilder
s argumentem--global
.dotnet tool install --global Microsoft.DataApiBuilder
Poznámka
Pokud už je balíček nainstalovaný, místo toho ho aktualizujete pomocí
dotnet tool update
příkazu .dotnet tool update --global Microsoft.DataApiBuilder
Pomocí argumentu ověřte, že je nástroj nainstalovaný
dotnet tool list
s--global
.dotnet tool list --global
Konfigurace místní databáze
Začněte spuštěním místního emulátoru. Pak můžete do nového kontejneru přidat ukázková data.
Získejte nejnovější kopii image kontejneru
mcr.microsoft.com/cosmosdb/linux/azure-cosmos-emulator:latest
z Docker Hub.docker pull mcr.microsoft.com/cosmosdb/linux/azure-cosmos-emulator:latest
Spusťte kontejner Dockeru publikováním portu 8081 a rozsahu portů 10250–10255.
docker run \ --publish 8081:8081 \ --publish 10250-10255:10250-10255 \ --detach \ mcr.microsoft.com/cosmosdb/linux/azure-cosmos-emulator:latest
Stažení certifikátu podepsaného svým držitelem pro emulátor
curl -k https://localhost:8081/_explorer/emulator.pem > ~/emulatorcert.crt
Nainstalujte certifikát podepsaný svým držitelem pomocí postupu Bash pro Linux nebo postupu PowerShellu pro Windows.
sudo cp ~/emulatorcert.crt /usr/local/share/ca-certificates/ sudo update-ca-certificates
certutil -f -addstore "Root" emulatorcert.crt
Připojte se k místní databázi pomocí upřednostňovaného prostředí pro správu dat. Mezi příklady patří mimo jiné Azure Data Studio a rozšíření Azure Databases pro Visual Studio Code.
Tip
Výchozí připojovací řetězec emulátoru je
AccountEndpoint=https://localhost:8081;AccountKey=C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==;
.Create novou
bookshelf
databázi aauthors
kontejner.Do kontejneru se zasadí tato základní data JSON.
[ { "id": "01", "firstName": "Henry", "lastName": "Ross" }, { "id": "02", "firstName": "Jacob", "middleName": "A.", "lastName": "Hancock" }, { "id": "03", "firstName": "Sydney", "lastName": "Mattos" }, { "id": "04", "firstName": "Jordan", "lastName": "Mitchell" }, { "id": "05", "firstName": "Victoria", "lastName": "Burke" }, { "id": "06", "firstName": "Vance", "lastName": "DeLeon" }, { "id": "07", "firstName": "Reed", "lastName": "Flores" }, { "id": "08", "firstName": "Felix", "lastName": "Henderson" }, { "id": "09", "firstName": "Avery", "lastName": "Howard" }, { "id": "10", "firstName": "Violet", "lastName": "Martinez" } ]
Tip
Metoda použitá k počátečním datům bude do značné míry záviset na nástroji pro správu dat. V případě nástroje Azure Data Studio můžete toto pole JSON uložit jako soubor .json a pak použít funkci Import .
Create konfigurační soubory
Create konfigurační soubor směrného plánu pomocí rozhraní příkazového řádku DAB. Pak přidejte konfigurační soubor vývoje s vašimi aktuálními přihlašovacími údaji.
Create nový soubor s názvem schema.graphql s tímto obsahem schématu.
type Author @model { id: ID! firstName: String! middleName: String lastName: String! }
Create typický konfigurační soubor pomocí
dab init
.--connection-string
Přidejte argument s výchozím připojovací řetězec emulátoru.dab init --database-type "cosmosdb_nosql" --host-mode "Development" --cosmosdb_nosql-database bookshelf --graphql-schema schema.graphql --connection-string "AccountEndpoint=https://localhost:8081;AccountKey=C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==;"
Přidejte entitu Author pomocí
dab add
.dab add Author --source "authors" --permissions "anonymous:*"
Testování rozhraní API s místní databází
Teď spusťte nástroj Tvůrce rozhraní API pro data a ověřte, že se konfigurační soubory během vývoje sloučí.
Použijte
dab start
ke spuštění nástroje a vytvoření koncových bodů rozhraní API pro vaši entitu.dab start
Výstup nástroje by měl obsahovat adresu, která se má použít k přechodu na spuštěné rozhraní API.
Successfully completed runtime initialization. info: Microsoft.Hosting.Lifetime[14] Now listening on: <http://localhost:5000> info: Microsoft.Hosting.Lifetime[0]
Tip
V tomto příkladu běží aplikace na
localhost
portu 5000. Spuštěná aplikace může mít jinou adresu a port.Přejděte na koncový bod GraphQL tak, že přejdete na
/graphql
a spustíte tuto operaci.query { authors { items { id firstName lastName } } }
Tip
V tomto příkladu by adresa URL byla
https://localhost:5000/graphql
. Na tuto adresu URL můžete přejít pomocí webového prohlížeče.