Delen via


Wat is er nieuw in Data API Builder versie 1.3 (november 2024)

Releaseopmerkingen en informatie over de updates en verbeteringen in DAB (Data API Builder) versie 1.3.
Release 1.3: Data API Builder voor Azure Databases

Inleiding: Hot Reload

Uw ontwikkelaarslus is nu kleiner, sneller en efficiënter. Eerder moest de motor worden gestopt en opnieuw opgestart om het configuratiebestand te wijzigen. Met Hot Reload detecteert DAB configuratiewijzigingen automatisch en past updates toe zonder de engine opnieuw op te starten. U kunt wijzigingen direct testen en in de stroom blijven. Vanaf versie 1.3 ondersteunt bijna elke DAB-functie Hot Reload.

Hot Reload is altijd ingeschakeld en kan niet worden uitgeschakeld. In production de modus worden echter geen configuratiewijzigingen toegepast. Dit gedrag voorkomt dat niet-geautoriseerde updates op de achtergrond eindpunten opnieuw configureren. In een toekomstige release production ondersteunt de modus ook de log-level instelling: een functie waarmee de uitgebreidheid van logboeken per naamruimte wordt aangepast om het runtimegedrag te diagnosticeren.

Inleiding: Cosmos-schemageneratie

Data API Builder is een van de eerste opdrachtregelinterfaces (CLIs) om ontwikkelaars te helpen bij het genereren van schema's voor NoSQL-gegevensbronnen. Wanneer u Cosmos DB configureert, heeft DAB een schema nodig om een gestructureerd GraphQL-eindpunt te bouwen.

Het handmatig maken van dat schema kan complex zijn. Met deze release bevat de DAB CLI een functie voor het genereren van schema's. Door een steekproef van uw gegevens te nemen op basis van de entiteiten die u definieert, wordt er een werkschema gegenereerd, waarvoor slechts minimale controle en updates nodig zijn om aan de slag te gaan.

dab init 
  --database-type cosmosdb_nosql 
  --connection-string @env('cosmos-connection-string') 
  --cosmosdb_nosql-database MyDatabase
  --cosmosdb_nosql-container MyContainer

dab add MyEntity
  --source "MyDatabase.MyEntity"
  --permissions "anonymous:*"
  --graphQL "MyEntity:MyEntities"

dab export
  --graphql
  --generate
  -o ./schemas

dab start

Opdrachtregel alles

Naarmate de opbouwfunctie voor gegevens-API's zich ontwikkelt, wordt het configuratiebestand langer en geavanceerder. Deze indeling is JSON- gemakkelijk te lezen en te bewerken- het is ook gemakkelijk te breken met een verkeerd geplaatste komma of haak. Daarom helpt de DAB CLI ontwikkelaars de configuratie veilig te wijzigen zonder JSON rechtstreeks te bewerken.

In versie 1.3 werkt de nieuwe dab configure subopdracht bijna elke instelling in de runtime en data-source secties bij. Deze update brengt DAB dichter bij de volledige CLI-dekking en elke release blijft die dekking uitbreiden.

Voorbeeld: Bijwerken data-source

Optie 1: Één uitgebreide opdracht

dab configure 
  --data-source.database-type cosmosdb_nosql
  --data-source.options.database testdbname 
  --data-source.options.schema testschema.gql

Optie 2: Verschillende kleinere opdrachten

dab configure --data-source.database-type cosmosdb_nosql
dab configure --data-source.options.database testdbname
dab configure --data-source.options.schema testschema.gql

Een opmerking over database-type

Sommige opties zijn specifiek voor het databasetype. Als uw configuratie momenteel gebruik maakt van de placeholder mssql en u past de Cosmos DB-opties toe zonder eerst naar de placeholder cosmosdb_nosql te schakelen, zal de opdracht niet slagen.

Meer voorbeelden

dab configure --runtime.graphql.enabled true
dab configure --runtime.graphql.path /updatedPath
dab configure --runtime.graphql.allow-introspection true 
dab configure --runtime.graphql.multiple-mutations.create.enabled true

DAB blijft doorgaan naar volledige opdrachtregeldekking, zelfs voor diep geneste configuratie-eigenschappen.