Partager via


Informations de référence sur l’interface de ligne de commande du générateur d’API de données

L’interface de ligne de commande du générateur d’API de données (CLI) (dab CLI ou dab) est un outil en ligne de commande qui simplifie l’expérience de développement local pour les applications à l’aide du générateur d’API de données.

Conseil

L’interface CLI du générateur d’API de données est fournie avec un système d’aide intégré. Pour obtenir la liste des commandes disponibles, utilisez l’option --help de la dab commande .

dab --help

Pour obtenir de l’aide sur une commande spécifique, utilisez l’option --help . Par exemple, pour en savoir plus sur la init commande :

dab init --help

Verbes et options de ligne de commande

init

Initialise la configuration du runtime pour le moteur d’exécution du générateur d’API de données. Il crée un fichier JSON avec les propriétés fournies en tant qu’options.

Syntaxe

dab init [options]

Exemples

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

Options

Options Option obligatoire Valeur par défaut Valeur requise Type de valeur Description
--database-type ✔️ Oui ✔️ Oui string Type de base de données à connecter. Valeurs prises en charge : mssql, cosmosdb_nosql, cosmosdb_postgresql, mysql, postgresql.
--connection-string ❌ Non "" ✔️ Oui string Détails de connexion pour se connecter à la base de données.
--cosmosdb_nosql-database ✔️ Oui ¹ ✔️ Oui string Nom de la base de données pour Cosmos DB for NoSql.
--cosmosdb_nosql-container ❌ Non ✔️ Oui string Nom du conteneur pour Cosmos DB for NoSql.
--graphql-schema ✔️ Oui ¹ ✔️ Oui string chemin du schéma GraphQL
--set-session-context ❌ Non false ❌ Non Activez l’envoi de données à MsSql à l’aide du contexte de session.
--host-mode ❌ Non production ✔️ Oui string Spécifier le mode hôte - développement ou production
--cors-origin ❌ Non "" ✔️ Oui string Spécifiez la liste des origines autorisées.
--auth.provider ❌ Non StaticWebApps ✔️ Oui string Spécifiez le fournisseur d’identité.
--rest.path ❌ Non /api ✔️ Oui string Spécifiez le préfixe du point de terminaison REST.
--rest.disabled ❌ Non false ❌ Non Désactive le point de terminaison REST pour toutes les entités.
--rest.enabled ❌ Non true ✔️ Oui Active le point de terminaison REST pour toutes les entités.
--rest.request-body-strict ❌ Non true ✔️ Oui N’autorise pas les champs superflus dans le corps de la requête.
--graphql.path ❌ Non /graphql ✔️ Oui string Spécifiez le préfixe du point de terminaison GraphQL.
--graphql.disabled ❌ Non false ❌ Non Désactive GraphQL point de terminaison pour toutes les entités.
--graphql.enabled ❌ Non true ✔️ Oui Active GraphQL point de terminaison pour toutes les entités.
--graphql.multiple-create.enabled ❌ Non false ✔️ Oui Active plusieurs fonctionnalités de création dans GraphQL.
--auth.audience ❌ Non ✔️ Oui string Identifie les destinataires auxquels le jeton web Json (JWT) est destiné.
--auth.issuer ❌ Non ✔️ Oui string Spécifiez la partie qui a émis le jeton JWT.
-c,--config ❌ Non dab-config.json ✔️ Oui string Chemin d’accès au fichier de configuration.

¹ Cette option n’est requise que lorsque --database-type est défini sur cosmosdb_nosql.

add

Ajoutez une nouvelle entité de base de données au fichier de configuration. Vérifiez que vous disposez déjà d’un fichier de configuration avant d’exécuter cette commande. Sinon, elle retourne une erreur.

Syntaxe

dab add [entity-name] [options]

Exemples

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

Options

Options Option Obligatoire Valeur par défaut Valeur requise Type de valeur Description
-s,--source ✔️ Oui ✔️ Oui string Nom de la table ou du conteneur source.
--Autorisations ✔️ Oui ✔️ Oui string Autorisations requises pour accéder à la table ou au conteneur source. Format : [role]:[actions].
--source.type ❌ Non table ✔️ Oui string Type de l’objet de base de données. Valeurs prises en charge : table, view, stored-procedure.
--source.params ❌ Non ✔️ Oui string Dictionnaire des paramètres et de leurs valeurs pour l’objet Source. param1:val1,param2:value2,... pour les procédures stockées.
--source.key-fields ✔️ Oui ¹ ✔️ Oui string Un ou plusieurs champs à utiliser comme clés primaires pour les tables et les vues uniquement. Valeurs séparées par des virgules. Par exemple : --source.key-fields "id,name,type".
--Reste ❌ Non Nom de l’entité sensible à la casse ✔️ Oui string Itinéraire pour l’API REST. Exemples : --rest: false -> Désactive les appels d’API REST pour cette entité. --rest: true -> Le nom de l’entité devient le chemin d’accès au reste. --rest: "customPathName" -> CustomPathName fourni devient le chemin REST.
--rest.methods ❌ Non post ✔️ Oui string Actions HTTP à prendre en charge pour la procédure stockée. Spécifiez les actions sous forme de liste séparée par des virgules. Les actions HTTP valides sont les suivantes : [get, post, put, patch, delete].
--graphql ❌ Non Nom de l’entité sensible à la casse ✔️ Oui Bool/String Type d’entité exposé pour GraphQL. Exemples : --graphql: false -> désactive les appels graphql pour cette entité. --graphql: true-> Expose l’entité pour GraphQL avec des noms par défaut. La forme singulière du nom d’entité est prise en compte pour les noms de requête et de mutation. --graphql: "customQueryName" -> Définit explicitement la valeur au singulier tandis que DAB pluralise la valeur fournie pour les requêtes et les mutations. --graphql: "singularName:pluralName" -> Définit les valeurs au singulier et au pluriel (délimitées par un deux-points :) utilisées pour les requêtes et les mutations.
--graphql.operation ❌ Non mutation ✔️ Oui string GraphQL opération à prendre en charge pour la procédure stockée. Valeurs prises en charge : query, mutation.
--fields.include ❌ Non ✔️ Oui string Champs avec l’autorisation d’accès.
--fields.exclude ❌ Non ✔️ Oui string Champs exclus des listes d’actions.
--policy-database ❌ Non ✔️ Oui string Spécifiez une règle de filtre de style OData qui est injectée dans la requête envoyée à la base de données.
-c,--config ❌ Non dab-config.json ✔️ Oui string Chemin d’accès au fichier de configuration.

¹ Cette option n’est requise que lorsque --source.type est défini sur view.

update

Mettez à jour les propriétés d’une entité de base de données dans le fichier de configuration.

Notes

dab update prend en charge toutes les options prises en charge par dab add. En outre, il prend également en charge les options répertoriées.

Syntaxe

dab update [entity-name] [options]

Exemples

dab update Publisher --permissions "authenticated:*"

Options

Options Option Obligatoire Valeur par défaut Valeur requise Type de valeur Description
--Relation ❌ Non ✔️ Oui string Spécifiez la relation entre deux entités. Indiquez le nom de la relation.
--Cardinalité ✔️ Oui ¹ ✔️ Oui string Spécifiez la cardinalité entre deux entités. Peut être un ou plusieurs.
--target.entity ✔️ Oui ¹ ✔️ Oui string Une autre entité exposée à laquelle l’entité source est liée.
--linking.object ❌ Non ✔️ Oui string Objet de base de données utilisé pour prendre en charge une relation M :N.
--linking.source.fields ❌ Non ✔️ Oui string Champs de base de données dans l’objet de liaison pour se connecter à l’élément associé dans l’entité source. Champs séparés par des virgules.
--linking.target.fields ❌ Non ✔️ Oui string Champs de base de données dans l’objet de liaison pour se connecter à l’élément associé dans l’entité cible. Champs séparés par des virgules.
--relationship.fields ❌ Non ✔️ Oui string Spécifiez les champs à utiliser pour le mappage des entités. Exemple : --relationship.fields "id:book_id". Ici, id représente la colonne de sourceEntity, tandis que book_id de targetEntity. Les clés étrangères sont requises entre les sources sous-jacentes si elles ne sont pas spécifiées.
-m,--map ❌ Non ✔️ Oui string Spécifiez les mappages entre les champs de base de données et les champs GraphQL et REST. Format : --map "backendName1:exposedName1, backendName2:exposedName2,...".

¹ Cette option n’est requise que lorsque l’option --relationship est utilisée.

export

Exportez le schéma requis en tant que fichier et enregistrez sur le disque en fonction des options.

Syntaxe

dab export [options]

Exemples

dab export --graphql -o ./schemas

Options

Options Option Obligatoire Valeur par défaut Valeur requise Type de valeur Description
--graphql ❌ Non false ❌ Non Exporter GraphQL schéma.
-o,--output ✔️ Oui ✔️ Oui string Spécifiez le répertoire pour enregistrer le fichier de schéma.
-g,--graphql-schema-file ❌ Non schema.graphql ✔️ Oui string Spécifiez le nom du fichier de schéma Graphql.
-c,--config ❌ Non dab-config.json ✔️ Oui string Chemin d’accès au fichier de configuration.

start

Démarrez le moteur d’exécution avec le fichier de configuration fourni pour traiter les requêtes REST et GraphQL.

Syntaxe

dab start [options]

Exemples

dab start

Options

Options Option Obligatoire Valeur par défaut Valeur requise Type de valeur Description
--Verbose ❌ Non ❌ Non Spécifiez le niveau de journalisation comme informationnel.
--Loglevel ❌ Non Debug quand hostMode=development, sinon Error quand HostMode=Production ✔️ Oui string Spécifiez le niveau de journalisation comme valeur fournie. exemple : débogage, erreur, informations, etc.
--no-https-redirect ❌ Non false ✔️ Oui string Désactive les redirections https automatiques.
-c,--config ❌ Non dab-config.json ✔️ Oui string Chemin d’accès au fichier de configuration.

Notes

Vous ne pouvez pas utiliser --verbose et --LogLevel en même temps. Pour plus d’informations sur les différents niveaux de journalisation, consultez Niveaux de journalisation .NET.

validate

Valide le fichier de configuration du runtime utilisé par le moteur d’exécution du générateur d’API de données. Le processus de validation garantit que le fichier de configuration est conforme au schéma et contient toutes les informations requises pour que le moteur d’exécution fonctionne correctement.

Syntaxe

dab validate [options]

Exemples

dab validate

Options

Options Option Obligatoire Valeur par défaut Valeur requise Type de valeur Description
-c,--config ❌ Non dab-config.json ✔️ Oui string Chemin d’accès au fichier de configuration qui est la cible de la validation.