Condividi tramite


Informazioni di riferimento sulle interfacce della riga di comando di Generatore API dati

L'interfaccia della riga di comando di Data API Builder (interfaccia della riga di comando) (interfaccia della riga di comando di Dab o dab) è uno strumento da riga di comando che semplifica l'esperienza di sviluppo locale per le applicazioni che usano Generatore API dati.

Suggerimento

L'interfaccia della riga di comando del generatore di API dati include un sistema di guida integrato. Per ottenere un elenco dei comandi disponibili, usare l'opzione --help nel dab comando .

dab --help

Per ottenere assistenza su un comando specifico, usare l'opzione --help . Per altre informazioni sul init comando, ad esempio:

dab init --help

Verbi e opzioni della riga di comando

init

Inizializza la configurazione di runtime per il motore di runtime di Generatore API dati. Crea un nuovo file JSON con le proprietà fornite come opzioni.

Sintassi

dab init [options]

Esempio

dab init --config "dab-config.mssql.json" --database-type mssql --connection-string "@env('SQL_CONNECTION_STRING')"
dab init --database-type mysql --connection-string "@env('MYSQL_CONNECTION_STRING')" --graphql.multiple-create.enabled true

Opzioni

Opzioni Opzione obbligatoria Valore predefinito Valore obbligatorio Tipo di valore Descrizione
--database-type ✔️ Sì ✔️ Sì string Tipo di database da connettere. Valori supportati: mssql, cosmosdb_nosql, cosmosdb_postgresql, mysql, postgresql.
--connection-string ❌ No "" ✔️ Sì string Dettagli di connessione per la connessione al database.
--cosmosdb_nosql-database ✔️ Sì ¹ ✔️ Sì string Nome del database per Cosmos DB per NoSql.
--cosmosdb_nosql-container ❌ No ✔️ Sì string Nome del contenitore per Cosmos DB per NoSql.
--graphql-schema ✔️ Sì ¹ ✔️ Sì string Percorso dello schema GraphQL
--set-session-context ❌ No false ❌ No Abilitare l'invio di dati a MsSql usando il contesto della sessione.
--host-mode ❌ No production ✔️ Sì string Specificare la modalità host - sviluppo o produzione
--cors-origin ❌ No "" ✔️ Sì string Specificare l'elenco delle origini consentite.
--auth.provider ❌ No StaticWebApps ✔️ Sì string Specificare il provider di identità.
--rest.path ❌ No /api ✔️ Sì string Specificare il prefisso dell'endpoint REST.
--rest.disabled ❌ No false ❌ No Disabilita l'endpoint REST per tutte le entità.
--rest.enabled ❌ No true ✔️ Sì Abilita l'endpoint REST per tutte le entità.
--rest.request-body-strict ❌ No true ✔️ Sì Non consente campi estranei nel corpo della richiesta.
--graphql.path ❌ No /graphql ✔️ Sì string Specificare il prefisso dell'endpoint GraphQL.
--graphql.disabled ❌ No false ❌ No Disabilita l'endpoint GraphQL per tutte le entità.
--graphql.enabled ❌ No true ✔️ Sì Abilita l'endpoint GraphQL per tutte le entità.
--graphql.multiple-create.enabled ❌ No false ✔️ Sì Abilita più funzionalità di creazione in GraphQL.
--auth.audience ❌ No ✔️ Sì string Identifica i destinatari a cui è destinato il token Json Web (JWT).
--auth.issuer ❌ No ✔️ Sì string Specificare l'entità che ha emesso il token JWT.
-c,--config ❌ No dab-config.json ✔️ Sì string Percorso del file di configurazione.

¹ Questa opzione è obbligatoria solo quando --database-type è impostata su cosmosdb_nosql.

add

Aggiungere una nuova entità di database al file di configurazione. Assicurarsi di avere già un file di configurazione prima di eseguire questo comando. In caso contrario, viene restituito un errore.

Sintassi

dab add [entity-name] [options]

Esempio

dab add Book -c "dab-config.MsSql.json" --source dbo.books --permissions "anonymous:*"

Opzioni

Opzioni Opzione obbligatoria Valore predefinito Valore obbligatorio Tipo di valore Descrizione
-s,--source ✔️ Sì ✔️ Sì string Nome della tabella o del contenitore di origine.
--Autorizzazioni ✔️ Sì ✔️ Sì string Autorizzazioni necessarie per accedere alla tabella o al contenitore di origine. Formato: [role]:[actions].
--source.type ❌ No table ✔️ Sì string Tipo dell'oggetto di database. Valori supportati: table, view, stored-procedure.
--source.params ❌ No ✔️ Sì string Dizionario dei parametri e dei relativi valori per l'oggetto Source. param1:val1,param2:value2,... per stored procedure.
campi di --source.key ✔️ Sì ¹ ✔️ Sì string Uno o più campi da usare come chiavi primarie solo per tabelle e viste. Valori delimitati da virgole. Ad esempio, --source.key-fields "id,name,type".
--Resto ❌ No Nome dell'entità con distinzione tra maiuscole e minuscole ✔️ Sì string Route per l'API REST. Esempi: --rest: false :> disabilita le chiamate API REST per questa entità. --rest: true -> Il nome dell'entità diventa il percorso rimanente. --rest: "customPathName" -> Specificato customPathName diventa il percorso REST.
--rest.methods ❌ No post ✔️ Sì string Azioni HTTP da supportare per la stored procedure. Specificare le azioni come elenco delimitato da virgole. Le azioni HTTP valide sono:[get, post, put, patch, delete].
--graphql ❌ No Nome dell'entità con distinzione tra maiuscole e minuscole ✔️ Sì Bool/String Tipo di entità esposto per GraphQL. Esempi: --graphql: false :> disabilita le chiamate graphql per questa entità. --graphql: true -> Espone l'entità per GraphQL con nomi predefiniti. La forma singolare del nome dell'entità viene considerata per i nomi di query e mutazioni. --graphql: "customQueryName" :> imposta in modo esplicito il valore singolare mentre DAB pluralizza il valore fornito per query e mutazioni. --graphql: "singularName:pluralName" -> Imposta sia i valori singolari che plurali (delimitati da due punti :) usati per le query e le mutazioni.
--graphql.operation ❌ No mutation ✔️ Sì string Operazione GraphQL da supportare per la stored procedure. Valori supportati: query, mutation.
--fields.include ❌ No ✔️ Sì string Campi con autorizzazione per l'accesso.
--fields.exclude ❌ No ✔️ Sì string Campi esclusi dagli elenchi di azioni.
--policy-database ❌ No ✔️ Sì string Specificare una regola di filtro di stile OData inserita nella query inviata al database.
-c,--config ❌ No dab-config.json ✔️ Sì string Percorso del file di configurazione.

¹ Questa opzione è obbligatoria solo quando --source.type è impostata su view.

update

Aggiornare le proprietà di qualsiasi entità di database nel file di configurazione.

Nota

dab update supporta tutte le opzioni supportate da dab add. Inoltre, supporta anche le opzioni elencate.

Sintassi

dab update [entity-name] [options]

Esempio

dab update Publisher --permissions "authenticated:*"

Opzioni

Opzioni Opzione obbligatoria Valore predefinito Valore obbligatorio Tipo di valore Descrizione
--Relazione ❌ No ✔️ Sì string Specificare la relazione tra due entità. Specificare il nome della relazione.
--Cardinalità ✔️ Sì ¹ ✔️ Sì string Specificare la cardinalità tra due entità. Potrebbe essere uno o molti.
--target.entity ✔️ Sì ¹ ✔️ Sì string Un'altra entità esposta a cui è correlata l'entità di origine.
--linking.object ❌ No ✔️ Sì string Oggetto di database utilizzato per supportare una relazione M:N.
--linking.source.fields ❌ No ✔️ Sì string Campi di database nell'oggetto di collegamento per connettersi all'elemento correlato nell'entità di origine. Campi delimitati da virgole.
--linking.target.fields ❌ No ✔️ Sì string Campi di database nell'oggetto di collegamento per connettersi all'elemento correlato nell'entità di destinazione. Campi delimitati da virgole.
--relationship.fields ❌ No ✔️ Sì string Specificare i campi da usare per il mapping delle entità. Esempio: --relationship.fields "id:book_id". In questo caso, id rappresenta la colonna di sourceEntity, mentre book_id da targetEntity. Le chiavi esterne sono necessarie tra le origini sottostanti, se non specificate.
-m,--map ❌ No ✔️ Sì string Specificare i mapping tra i campi del database e GraphQL e i campi REST. Formato: --map "backendName1:exposedName1, backendName2:exposedName2,...".

¹ Questa opzione è necessaria solo quando viene usata l'opzione --relationship .

export

Esportare lo schema richiesto come file e salvarlo su disco in base alle opzioni.

Sintassi

dab export [options]

Esempio

dab export --graphql -o ./schemas

Opzioni

Opzioni Opzione obbligatoria Valore predefinito Valore obbligatorio Tipo di valore Descrizione
--graphql ❌ No false ❌ No Esportare lo schema GraphQL.
-o,--output ✔️ Sì ✔️ Sì string Specificare la directory per salvare il file di schema.
-g,--graphql-schema-file ❌ No schema.graphql ✔️ Sì string Specificare il nome del file di schema Graphql.
-c,--config ❌ No dab-config.json ✔️ Sì string Percorso del file di configurazione.

start

Avviare il motore di runtime con il file di configurazione fornito per gestire le richieste REST e GraphQL.

Sintassi

dab start [options]

Esempio

dab start

Opzioni

Opzioni Opzione obbligatoria Valore predefinito Valore obbligatorio Tipo di valore Descrizione
--Dettagliato ❌ No ❌ No Specificare il livello di registrazione come informativo.
--Loglevel ❌ No Debug quando hostMode=development, else Error quando HostMode=Production ✔️ Sì string Specificare il livello di registrazione come valore specificato. esempio: debug, errore, informazioni e così via.
--no-https-redirect ❌ No false ✔️ Sì string Disabilita i reindirizzamenti https automatici.
-c,--config ❌ No dab-config.json ✔️ Sì string Percorso del file di configurazione.

Nota

Non è possibile usare --verbose e --LogLevel contemporaneamente. Per altre informazioni sui diversi livelli di registrazione, vedere Livelli di log .NET.

validate

Convalida il file di configurazione di runtime usato dal motore di runtime di Generatore API dati. Il processo di convalida garantisce che il file di configurazione sia conforme allo schema e contenga tutte le informazioni necessarie per il corretto funzionamento del motore di runtime.

Sintassi

dab validate [options]

Esempio

dab validate

Opzioni

Opzioni Opzione obbligatoria Valore predefinito Valore obbligatorio Tipo di valore Descrizione
-c,--config ❌ No dab-config.json ✔️ Sì string Percorso del file di configurazione che rappresenta la destinazione della convalida.