Rövid útmutató: A Data API Builder használata a NoSQL-lel
Ebben a rövid útmutatóban data API builder konfigurációs fájlokat hoz létre az Azure Cosmos DB for NoSQL-emulátor megcélzásához.
Előfeltételek
- Docker
- .NET 8
- Adatkezelési ügyfél
- Ha nincs telepítve ügyfél, telepítse az Azure Data Studiót
Tipp
Másik lehetőségként nyissa meg ezt a rövid útmutatót a GitHub Codespacesben, és már telepítve van az összes fejlesztői előfeltétel. Egyszerűen hozza magával saját Azure-előfizetését. A GitHub-fiókok magukban foglalják a tárterületre és az alapórákra való jogosultságot díjmentesen. További információt a GitHub-fiókok tárolási és alapidei című témakörben talál.
A Data API Builder parancssori felületének telepítése
Telepítse a csomagot a Microsoft.DataApiBuilder
NuGetből .NET-eszközként.
A paranccsal
dotnet tool install
telepítheti a legújabb verziótMicrosoft.DataApiBuilder
az--global
argumentummal.dotnet tool install --global Microsoft.DataApiBuilder
Megjegyzés
Ha a csomag már telepítve van, a használatával frissíti a csomagot
dotnet tool update
.dotnet tool update --global Microsoft.DataApiBuilder
Ellenőrizze, hogy az eszköz telepítve van-e az
--global
argumentum használatávaldotnet tool list
.dotnet tool list --global
A helyi adatbázis konfigurálása
Először futtassa a helyi emulátort. Ezután létrehozhat egy új tárolót mintaadatokkal.
Szerezze be a tárolórendszerkép legújabb példányát a
mcr.microsoft.com/cosmosdb/linux/azure-cosmos-emulator:latest
Docker Hub.docker pull mcr.microsoft.com/cosmosdb/linux/azure-cosmos-emulator:latest
Indítsa el a Docker-tárolót a 8081-ös port és az 10250-10255-ös porttartomány közzétételével.
docker run \ --publish 8081:8081 \ --publish 10250-10255:10250-10255 \ --detach \ mcr.microsoft.com/cosmosdb/linux/azure-cosmos-emulator:latest
Az emulátor önaláírt tanúsítványának letöltése
curl -k https://localhost:8081/_explorer/emulator.pem > ~/emulatorcert.crt
Telepítse az önaláírt tanúsítványt a Linux Bash-lépésekkel vagy a Windows PowerShell-lépésekkel.
sudo cp ~/emulatorcert.crt /usr/local/share/ca-certificates/ sudo update-ca-certificates
certutil -f -addstore "Root" emulatorcert.crt
Csatlakozzon a helyi adatbázishoz az előnyben részesített adatkezelési környezettel. Ilyen például az Azure Data Studio és a Visual Studio Code Azure Databases bővítménye.
Tipp
Az emulátor alapértelmezett kapcsolati karakterlánc a következő:
AccountEndpoint=https://localhost:8081;AccountKey=C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==;
.Létrehozás egy új
bookshelf
adatbázist ésauthors
tárolót.Ezzel az alapszintű JSON-adatokkal vetődje be a tárolót.
[ { "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" } ]
Tipp
Az adatok bevetéséhez használt módszer nagy mértékben az adatkezelési eszköztől függ. Az Azure Data Studio esetében ezt a JSON-tömböt mentheti .json fájlként, majd használhatja az Importálás funkciót.
konfigurációs fájlok Létrehozás
Létrehozás alapkonfigurációs fájlt a DAB CLI használatával. Ezután adjon hozzá egy fejlesztési konfigurációs fájlt az aktuális hitelesítő adataival.
Létrehozás egy schema.graphql nevű új fájlt ezzel a sématartalommal.
type Author @model { id: ID! firstName: String! middleName: String lastName: String! }
Létrehozás egy tipikus konfigurációs fájlt a használatával
dab init
. Adja hozzá az--connection-string
argumentumot az emulátor alapértelmezett kapcsolati karakterlánc.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==;"
Author entitás hozzáadása a paranccsal
dab add
.dab add Author --source "authors" --permissions "anonymous:*"
API tesztelése a helyi adatbázissal
Most indítsa el a Data API Builder eszközt annak ellenőrzéséhez, hogy a konfigurációs fájlok egyesülnek-e a fejlesztés során.
Az
dab start
eszközzel futtathatja az eszközt, és API-végpontokat hozhat létre az entitáshoz.dab start
Az eszköz kimenetének tartalmaznia kell a futó API-hoz való navigáláshoz használni kívánt címet.
Successfully completed runtime initialization. info: Microsoft.Hosting.Lifetime[14] Now listening on: <http://localhost:5000> info: Microsoft.Hosting.Lifetime[0]
Tipp
Ebben a példában az alkalmazás az 5000-s porton
localhost
fut. Előfordulhat, hogy a futó alkalmazásnak más címe és portja van.Nyissa meg a GraphQL-végpontot a művelethez való navigálással
/graphql
és futtatásával.query { authors { items { id firstName lastName } } }
Tipp
Ebben a példában az URL-cím a következő:
https://localhost:5000/graphql
. Ehhez az URL-címhez a webböngészővel navigálhat.