Snabbstart: Använda Data API Builder med PostgreSQL
I den här snabbstarten skapar du en uppsättning konfigurationsfiler för Data API Builder för att rikta in dig på en lokal PostgreSQL-databas.
Förutsättningar
- Docker
- .NET 8
- En datahanteringsklient
- Om du inte har en klient installerad installerar du Azure Data Studio
Tips
Du kan också öppna den här snabbstarten i GitHub Codespaces med alla krav för utvecklare redan installerade. Ta bara med din egen Azure-prenumeration. GitHub-konton innehåller berättigande till lagring och kärntimmar utan kostnad. Mer information finns i inkluderade lagrings- och kärntimmar för GitHub-konton.
Installera CLI för data-API:et
Microsoft.DataApiBuilder
Installera paketet från NuGet som ett .NET-verktyg.
Använd
dotnet tool install
för att installera den senaste versionen avMicrosoft.DataApiBuilder
med--global
argumentet .dotnet tool install --global Microsoft.DataApiBuilder
Anteckning
Om paketet redan är installerat uppdaterar du paketet i stället med hjälp av
dotnet tool update
.dotnet tool update --global Microsoft.DataApiBuilder
Kontrollera att verktyget har installerats med
dotnet tool list
argumentet--global
.dotnet tool list --global
Konfigurera den lokala databasen
Börja med att konfigurera och köra den lokala databasen. Sedan kan du skapa en ny container med exempeldata.
Hämta den senaste kopian av containeravbildningen
postgres:16
från Docker Hub.docker pull postgres:16
Starta Docker-containern genom att ange lösenordet och publicera port 5432. Ersätt
<your-password>
med ett anpassat lösenord.docker run \ --publish 5432:5432 \ --env "POSTGRES_PASSWORD=<your-password>" \ --detach \ postgres:16
Anslut till din lokala databas med hjälp av önskad datahanteringsmiljö. Exempel är, men är inte begränsade till: pgAdmin, Azure Data Studio och PostgreSQL-tillägget för Visual Studio Code.
Tips
Om du använder standardnätverk för dina Docker Linux-containeravbildningar är anslutningssträng troligen
Host=localhost;Port=5432;User ID=postgres;Password=<your-password>;
. Ersätt<your-password>
med det lösenord som du angav tidigare.Skapa en ny
bookshelf
databas.DROP DATABASE IF EXISTS bookshelf; CREATE DATABASE bookshelf;
Skapa en ny
dbo.authors
tabell och ange grundläggande data i tabellen.CREATE TABLE IF NOT EXISTS authors ( id INT NOT NULL PRIMARY KEY, first_name VARCHAR(100) NOT NULL, middle_name VARCHAR(100), last_name VARCHAR(100) NOT NULL ); INSERT INTO authors VALUES (01, 'Henry', NULL, 'Ross'), (02, 'Jacob', 'A.', 'Hancock'), (03, 'Sydney', NULL, 'Mattos'), (04, 'Jordan', NULL, 'Mitchell'), (05, 'Victoria', NULL, 'Burke'), (06, 'Vance', NULL, 'DeLeon'), (07, 'Reed', NULL, 'Flores'), (08, 'Felix', NULL, 'Henderson'), (09, 'Avery', NULL, 'Howard'), (10, 'Violet', NULL, 'Martinez');
Skapa konfigurationsfiler
Skapa en baslinjekonfigurationsfil med HJÄLP av DAB CLI. Lägg sedan till en utvecklingskonfigurationsfil med dina aktuella autentiseringsuppgifter.
Skapa en typisk konfigurationsfil med .
dab init
--connection-string
Lägg till argumentet med databasen anslutningssträng från det första avsnittet. Ersätt<your-password>
med lösenordet som du angav tidigare i den här guiden. Lägg också tillDatabase=bookshelf
värdet i anslutningssträng.dab init --database-type "postgresql" --host-mode "Development" --connection-string "Host=localhost;Port=5432;Database=bookshelf;User ID=postgres;Password=<your-password>;"
Lägg till en author-entitet med hjälp av
dab add
.dab add Author --source "public.authors" --permissions "anonymous:*"
Testa API:et med den lokala databasen
Starta nu verktyget Data API Builder för att verifiera att dina konfigurationsfiler sammanfogas under utvecklingen.
Använd
dab start
för att köra verktyget och skapa API-slutpunkter för din entitet.dab start
Utdata från verktyget ska innehålla den adress som ska användas för att navigera till api:et som körs.
Successfully completed runtime initialization. info: Microsoft.Hosting.Lifetime[14] Now listening on: <http://localhost:5000> info: Microsoft.Hosting.Lifetime[0]
Tips
I det här exemplet körs programmet på
localhost
port 5000. Det program som körs kan ha en annan adress och port.Prova först API:et manuellt genom att utfärda en GET-begäran till
/api/Author
.Tips
I det här exemplet är
https://localhost:5000/api/Author
URL:en . Du kan navigera till den här URL:en med hjälp av webbläsaren.Gå sedan till sidan för Swagger-dokumentation på
/swagger
.Tips
I det här exemplet är
https://localhost:5000/swagger
URL:en . Återigen kan du navigera till den här URL:en med hjälp av webbläsaren.