Mulai cepat: Menggunakan penyusun API Data dengan NoSQL
Dalam Mulai Cepat ini, Anda membuat sekumpulan file konfigurasi penyusun Api Data untuk menargetkan emulator Azure Cosmos DB for NoSQL.
Prasyarat
- Docker
- .NET 8
- Klien manajemen data
- Jika Anda tidak memiliki klien yang terinstal, instal Azure Data Studio
Tip
Atau, buka Mulai Cepat ini di GitHub Codespaces dengan semua prasyarat pengembang sudah diinstal. Cukup bawa langganan Azure Anda sendiri. Akun GitHub mencakup hak penyimpanan dan jam inti tanpa biaya. Untuk informasi selengkapnya, lihat penyimpanan yang disertakan dan jam inti untuk akun GitHub.
Menginstal CLI penyusun API Data
Microsoft.DataApiBuilder
Instal paket dari NuGet sebagai alat .NET.
Gunakan
dotnet tool install
untuk menginstal versi terbaru denganMicrosoft.DataApiBuilder
--global
argumen .dotnet tool install --global Microsoft.DataApiBuilder
Catatan
Jika paket sudah diinstal, Anda akan memperbarui paket sebagai gantinya menggunakan
dotnet tool update
.dotnet tool update --global Microsoft.DataApiBuilder
Verifikasi bahwa alat diinstal dengan
dotnet tool list
menggunakan--global
argumen .dotnet tool list --global
Mengonfigurasi database lokal
Mulailah dengan menjalankan emulator lokal. Kemudian, Anda dapat menyemai kontainer baru dengan data sampel.
Dapatkan salinan terbaru gambar
mcr.microsoft.com/cosmosdb/linux/azure-cosmos-emulator:latest
kontainer dari Docker Hub.docker pull mcr.microsoft.com/cosmosdb/linux/azure-cosmos-emulator:latest
Mulai kontainer docker dengan menerbitkan port 8081 dan rentang port 10250-10255.
docker run \ --publish 8081:8081 \ --publish 10250-10255:10250-10255 \ --detach \ mcr.microsoft.com/cosmosdb/linux/azure-cosmos-emulator:latest
Mengunduh sertifikat yang ditandatangani sendiri untuk emulator
curl -k https://localhost:8081/_explorer/emulator.pem > ~/emulatorcert.crt
Instal sertifikat yang ditandatangani sendiri menggunakan langkah Bash untuk Linux, atau langkah-langkah PowerShell untuk Windows.
sudo cp ~/emulatorcert.crt /usr/local/share/ca-certificates/ sudo update-ca-certificates
certutil -f -addstore "Root" emulatorcert.crt
Sambungkan ke database lokal Anda menggunakan lingkungan manajemen data pilihan Anda. Contohnya termasuk, tetapi tidak terbatas pada: Azure Data Studio, dan ekstensi Azure Databases untuk Visual Studio Code.
Tip
String koneksi default untuk emulator adalah
AccountEndpoint=https://localhost:8081;AccountKey=C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==;
.Create database dan
authors
kontainer barubookshelf
.Seed kontainer dengan data JSON dasar ini.
[ { "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
Metode yang digunakan untuk menyemai data sebagian besar akan bergantung pada alat manajemen data. Untuk Azure Data Studio, Anda dapat menyimpan array JSON ini sebagai file .json lalu menggunakan fitur Impor .
Create file konfigurasi
Create file konfigurasi dasar menggunakan DAB CLI. Kemudian, tambahkan file konfigurasi pengembangan dengan kredensial Anda saat ini.
Create file baru bernama schema.graphql dengan konten skema ini.
type Author @model { id: ID! firstName: String! middleName: String lastName: String! }
Create file konfigurasi umum menggunakan
dab init
.--connection-string
Tambahkan argumen dengan string koneksi default emulator.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==;"
Tambahkan entitas Penulis menggunakan
dab add
.dab add Author --source "authors" --permissions "anonymous:*"
Menguji API dengan database lokal
Sekarang, mulai alat penyusun Api Data untuk memvalidasi bahwa file konfigurasi Anda digabungkan selama pengembangan.
Gunakan
dab start
untuk menjalankan alat dan membuat titik akhir API untuk entitas Anda.dab start
Output alat harus menyertakan alamat yang akan digunakan untuk menavigasi ke API yang sedang berjalan.
Successfully completed runtime initialization. info: Microsoft.Hosting.Lifetime[14] Now listening on: <http://localhost:5000> info: Microsoft.Hosting.Lifetime[0]
Tip
Dalam contoh ini, aplikasi berjalan di
localhost
port 5000. Aplikasi Anda yang sedang berjalan mungkin memiliki alamat dan port yang berbeda.Buka titik akhir GraphQL dengan menavigasi ke
/graphql
dan menjalankan operasi ini.query { authors { items { id firstName lastName } } }
Tip
Dalam contoh ini, URL akan menjadi
https://localhost:5000/graphql
. Anda dapat menavigasi ke URL ini menggunakan browser web Anda.