Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Dans ce guide de démarrage rapide, vous générez un ensemble de fichiers de configuration du générateur d’API de données pour cibler le Azure Cosmos DB pour NoSQL émulateur.
Conditions préalables
- Docker
- .NET 8
Conseil / Astuce
Vous pouvez également ouvrir ce guide de démarrage rapide dans GitHub Codespaces avec toutes les conditions préalables pour les développeurs déjà installées. Apportez simplement votre propre abonnement Azure. GitHub comptes incluent un droit de stockage et des heures de base sans coût. Pour plus d’informations, consultez les heures de stockage et principales incluses pour les comptes GitHub.
Installer l’interface CLI du générateur d’API de données
Installez le package Microsoft.DataApiBuilder à partir de NuGet en tant qu’outil .NET.
Utilisez pour installer la dernière version de avec l'argument .
dotnet tool install --global Microsoft.DataApiBuilderRemarque
Si le paquet est déjà installé, mettez à jour le paquet à l'aide de .
dotnet tool update --global Microsoft.DataApiBuilderVérifiez que l'outil est installé avec en utilisant l'argument .
dotnet tool list --global
Configurer la base de données locale
Commencez par exécuter l’émulateur local. Vous pouvez ensuite amorcer un nouveau conteneur avec des données d'exemple.
Obtenez la dernière copie de l’image conteneur
mcr.microsoft.com/cosmosdb/linux/azure-cosmos-emulator:latestà partir de Docker Hub.docker pull mcr.microsoft.com/cosmosdb/linux/azure-cosmos-emulator:latestDémarrez le conteneur Docker en publiant le port 8081 et la plage de ports 10250-10255.
docker run \ --publish 8081:8081 \ --publish 10250-10255:10250-10255 \ --detach \ mcr.microsoft.com/cosmosdb/linux/azure-cosmos-emulator:latestTélécharger le certificat auto-signé pour l’émulateur
curl -k https://localhost:8081/_explorer/emulator.pem > ~/emulatorcert.crtInstallez le certificat auto-signé à l’aide des étapes Bash pour Linux ou PowerShell pour Windows.
sudo cp ~/emulatorcert.crt /usr/local/share/ca-certificates/ sudo update-ca-certificatescertutil -f -addstore "Root" emulatorcert.crtConnectez-vous à votre base de données locale à l’aide de votre environnement de gestion des données préféré. Les exemples incluent, mais ne sont pas limités à : l'extension Azure Databases pour Visual Studio Code.
Conseil / Astuce
La chaîne de connexion par défaut de l’émulateur est
AccountEndpoint=https://localhost:8081/;AccountKey=C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==.Créez une nouvelle base de données et un conteneur .
Amorçage du conteneur avec ces données JSON de base.
[ { "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" } ]
Créer les fichiers de configuration
Créez un fichier de configuration de référence à l’aide de l’interface CLI DAB. Ensuite, ajoutez un fichier de configuration de développement avec vos informations d’identification actuelles.
Créez un fichier nommé schema.gql avec ce contenu de schéma.
type Author @model { id: ID! firstName: String! middleName: String lastName: String! }Remarque
Dans cet exemple, ne spécifie pas d’argument . Lorsqu’il est omis, DAB mappe le nom de type GraphQL () au nom de l’entité (). Les noms doivent correspondre exactement et sont sensibles à la casse.
Créez un fichier de configuration classique à l’aide de . Ajoutez l'argument
--connection-stringavec la chaîne de connexion par défaut de l'émulateur.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=="Ajoutez une entité Author à l’aide de .
dab add Author --source "authors" --permissions "anonymous:*"
Tester l’API avec la base de données locale
À présent, démarrez l’outil Générateur d’API de données pour vérifier que vos fichiers de configuration sont fusionnés pendant le développement.
Permet d’exécuter l’outil et de créer des points de terminaison d’API pour votre entité.
dab startLa sortie de l’outil doit inclure l’adresse à utiliser pour accéder à l’API en cours d’exécution.
Successfully completed runtime initialization. info: Microsoft.Hosting.Lifetime[14] Now listening on: <http://localhost:5000> info: Microsoft.Hosting.Lifetime[0]Conseil / Astuce
Dans cet exemple, l’application s’exécute sur le port 5000. Votre application en cours d’exécution peut avoir une adresse et un port différents.
Allez au point de terminaison GraphQL en vous rendant à et exécutez cette opération.
Avant d’interroger GraphQL, vous pouvez valider le démarrage en ouvrant le point de terminaison racine (). Une réponse saine inclut des champs tels que , et .
query { authors { items { id firstName lastName } } }Conseil / Astuce
Dans cet exemple, l’URL est .
Étant donné que ce guide de démarrage rapide utilise , navigation dans le navigateur pour ouvrir Nitro. En mode Production, Nitro n’est pas visible lors de la navigation vers .
Étape suivante
Contenu connexe
- Configurer le générateur d’API de données pour Azure Cosmos DB pour NoSQL
- Disponibilité des fonctionnalités pour le générateur d’API de données