Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In deze Quickstart bouwt u een set configuratiebestanden voor de Data API Builder om te richten op de Azure Cosmos DB voor de NoSQL-emulator.
Vereiste voorwaarden
- Docker
- .NET 8
Aanbeveling
U kunt deze quickstart ook openen in GitHub Codespaces waarbij alle vereisten voor ontwikkelaars al zijn geïnstalleerd. Gebruik gewoon uw eigen Azure-abonnement. GitHub accounts omvatten gratis rechten voor opslag en kernuren. Zie inclusief opslag- en kernuren voor GitHub accounts voor meer informatie.
De DATA API Builder CLI installeren
Installeer het Microsoft.DataApiBuilder-pakket van NuGet als een .NET-hulpprogramma.
Gebruik om de nieuwste versie van de met het argument te installeren.
dotnet tool install --global Microsoft.DataApiBuilderOpmerking
Als het pakket al is geïnstalleerd, werkt u het pakket bij met behulp van .
dotnet tool update --global Microsoft.DataApiBuilderControleer of het hulpprogramma is geïnstalleerd met behulp van het argument.
dotnet tool list --global
De lokale database configureren
Begin met het uitvoeren van de lokale emulator. Vervolgens kunt u een nieuwe container met voorbeeldgegevens seeden.
Haal de meest recente containerimage van de
mcr.microsoft.com/cosmosdb/linux/azure-cosmos-emulator:latestuit Docker Hub.docker pull mcr.microsoft.com/cosmosdb/linux/azure-cosmos-emulator:latestStart de docker-container door poort 8081 en poortbereik 10250-10255 te publiceren.
docker run \ --publish 8081:8081 \ --publish 10250-10255:10250-10255 \ --detach \ mcr.microsoft.com/cosmosdb/linux/azure-cosmos-emulator:latestHet zelfondertekende certificaat voor de emulator downloaden
curl -k https://localhost:8081/_explorer/emulator.pem > ~/emulatorcert.crtInstalleer het zelfondertekende certificaat met behulp van de stappen Bash voor Linux of de stappen PowerShell voor Windows.
sudo cp ~/emulatorcert.crt /usr/local/share/ca-certificates/ sudo update-ca-certificatescertutil -f -addstore "Root" emulatorcert.crtMaak verbinding met uw lokale database met behulp van uw voorkeursomgeving voor gegevensbeheer. Voorbeelden hiervan zijn, maar zijn niet beperkt tot: de extensie Azure Databases voor Visual Studio Code.
Aanbeveling
De standaard emulator verbindingsreeks is
AccountEndpoint=https://localhost:8081/;AccountKey=C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==.Maak een nieuwe database en container.
Vul de container met deze simpele JSON-gegevens.
[ { "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" } ]
Configuratiebestanden maken
Maak een basislijnconfiguratiebestand met behulp van de DAB CLI. Voeg vervolgens een configuratiebestand voor ontwikkeling toe met uw huidige referenties.
Maak een nieuw bestand met de naam schema.gql met deze schema-inhoud.
type Author @model { id: ID! firstName: String! middleName: String lastName: String! }Opmerking
In dit voorbeeld wordt geen argument opgegeven . Wanneer dit wordt weggelaten, wijst DAB de GraphQL-typenaam () toe aan de entiteitsnaam (). De namen moeten exact overeenkomen en hoofdlettergevoelig zijn.
Maak een typisch configuratiebestand met behulp van . Voeg het argument
--connection-stringtoe met de standaard-verbindingsreeks van de emulator.dab init --database-type "cosmosdb_nosql" --host-mode "Development" --cosmosdb_nosql-database bookshelf --graphql-schema schema.gql --connection-string "AccountEndpoint=https://localhost:8081/;AccountKey=C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw=="Een auteurentiteit toevoegen met behulp van .
dab add Author --source "authors" --permissions "anonymous:*"
API testen met de lokale database
Start nu het hulpprogramma voor het maken van gegevens-API's om te controleren of uw configuratiebestanden tijdens de ontwikkeling worden samengevoegd.
Gebruik dit om het hulpprogramma uit te voeren en API-eindpunten voor uw entiteit te maken.
dab startDe uitvoer van het hulpprogramma moet het adres bevatten dat moet worden gebruikt om naar de actieve API te navigeren.
Successfully completed runtime initialization. info: Microsoft.Hosting.Lifetime[14] Now listening on: <http://localhost:5000> info: Microsoft.Hosting.Lifetime[0]Aanbeveling
In dit voorbeeld wordt de toepassing uitgevoerd op poort 5000. Uw actieve toepassing heeft mogelijk een ander adres en een andere poort.
Ga naar het GraphQL-eindpunt door naar te navigeren en deze bewerking uit te voeren.
Voordat u een query uitvoert op GraphQL, kunt u het opstarten valideren door het hoofdeindpunt () te openen. Een goed antwoord bevat velden zoals , en .
query { authors { items { id firstName lastName } } }Aanbeveling
In dit voorbeeld is de URL .
Omdat deze snelstartgids gebruikmaakt van browsernavigatie om Nitro te openen. In de productiemodus wordt Nitro niet weergegeven voor browsernavigatie naar .
Volgende stap
Verwante inhoud
- Data-API-builder instellen voor Azure Cosmos DB voor NoSQL
- Beschikbaarheid van functies voor Data API Builder