Inicio rápido: Uso de Data API Builder con PostgreSQL
En este inicio rápido, creará un conjunto de archivos de configuración de Data API Builder para establecer como destino una base de datos postgreSQL local.
Requisitos previos
- Docker
- .NET 8
- Un cliente de administración de datos
- Si no tiene instalado un cliente, instale Azure Data Studio.
Sugerencia
Como alternativa, abra este inicio rápido en GitHub Codespaces con todos los requisitos previos del desarrollador ya instalados. Simplemente traiga su propia suscripción de Azure. Las cuentas de GitHub incluyen un derecho de almacenamiento y horas básicas sin costo alguno. Para más información, consulte el artículo sobre el almacenamiento incluido y las horas principales de las cuentas de GitHub.
Instalación de la CLI de Data API Builder
Instale el Microsoft.DataApiBuilder
paquete desde NuGet como una herramienta de .NET.
Use
dotnet tool install
para instalar la versión más reciente deMicrosoft.DataApiBuilder
con el--global
argumento .dotnet tool install --global Microsoft.DataApiBuilder
Nota
Si el paquete ya está instalado, actualizará el paquete en su lugar mediante
dotnet tool update
.dotnet tool update --global Microsoft.DataApiBuilder
Compruebe que la herramienta está instalada con
dotnet tool list
el--global
argumento .dotnet tool list --global
Configuración de la base de datos local
Empiece por configurar y ejecutar la base de datos local. A continuación, puede inicializar un nuevo contenedor con datos de ejemplo.
Obtenga la copia más reciente de la
postgres:16
imagen de contenedor de Docker Hub.docker pull postgres:16
Inicie el contenedor de Docker estableciendo la contraseña y el puerto de publicación 5432. Reemplace por
<your-password>
una contraseña personalizada.docker run \ --publish 5432:5432 \ --env "POSTGRES_PASSWORD=<your-password>" \ --detach \ postgres:16
Conéctese a la base de datos local mediante su entorno de administración de datos preferido. Algunos ejemplos son: pgAdmin, Azure Data Studio y la extensión PostgreSQL para Visual Studio Code.
Sugerencia
Si usa redes predeterminadas para las imágenes de contenedor de Docker Linux, es probable que el cadena de conexión sea
Host=localhost;Port=5432;User ID=postgres;Password=<your-password>;
. Reemplace por<your-password>
la contraseña que estableció anteriormente.Cree una base de datos
bookshelf
.DROP DATABASE IF EXISTS bookshelf; CREATE DATABASE bookshelf;
Create una nueva
dbo.authors
tabla y inicializar la tabla con datos básicos.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');
Creación de archivos de configuración
Create un archivo de configuración de línea base mediante la CLI de DAB. A continuación, agregue un archivo de configuración de desarrollo con las credenciales actuales.
Create un archivo de configuración típico mediante
dab init
. Agregue el argumento con la--connection-string
base de datos cadena de conexión de la primera sección. Reemplace por<your-password>
la contraseña que estableció anteriormente en esta guía. Además, agregue elDatabase=bookshelf
valor al cadena de conexión.dab init --database-type "postgresql" --host-mode "Development" --connection-string "Host=localhost;Port=5432;Database=bookshelf;User ID=postgres;Password=<your-password>;"
Agregue una entidad Author mediante
dab add
.dab add Author --source "public.authors" --permissions "anonymous:*"
API de prueba con la base de datos local
Ahora, inicie la herramienta Generador de API de datos para validar que los archivos de configuración se combinan durante el desarrollo.
Use
dab start
para ejecutar la herramienta y crear puntos de conexión de API para la entidad.dab start
La salida de la herramienta debe incluir la dirección que se va a usar para ir a la API en ejecución.
Successfully completed runtime initialization. info: Microsoft.Hosting.Lifetime[14] Now listening on: <http://localhost:5000> info: Microsoft.Hosting.Lifetime[0]
Sugerencia
En este ejemplo, la aplicación se ejecuta en en
localhost
el puerto 5000. La aplicación en ejecución puede tener una dirección y un puerto diferentes.En primer lugar, pruebe la API manualmente mediante la emisión de una solicitud GET a
/api/Author
.Sugerencia
En este ejemplo, la dirección URL sería
https://localhost:5000/api/Author
. Puede navegar a esta dirección URL mediante el explorador web.A continuación, vaya a la página de documentación de Swagger en
/swagger
.Sugerencia
En este ejemplo, la dirección URL sería
https://localhost:5000/swagger
. De nuevo, puede navegar a esta dirección URL mediante el explorador web.