Condividi tramite


init comando

Inizializzare un nuovo file di configurazione di Generatore API dati. Il codice JSON risultante acquisisce i dettagli dell'origine dati, gli endpoint abilitati (REST, GraphQL, MCP), l'autenticazione e i comportamenti di runtime.

Sintassi

dab init [options]

Se il file di configurazione di destinazione esiste già, il comando lo sovrascrive. Non esiste alcuna unione. Usare il controllo della versione o i backup se è necessario mantenere il file precedente.

Sguardo rapido

Opzione Riassunto
-c, --config Nome file di configurazione dell'output (dab-config.jsonpredefinito )

Authentication

Opzione Riassunto
--auth.audience Attestazione del gruppo di destinatari JWT
--auth.issuer Attestazione dell'autorità di certificazione JWT
--auth.provider Provider di identità (staticWebApps predefinito)

Origine dati

Opzione Riassunto
--connection-string Stringa di connessione del database (supporta @env())
--cosmosdb_nosql-container Nome del contenitore NoSQL di Cosmos DB (facoltativo)
--cosmosdb_nosql-database Nome del database NoSQL di Cosmos DB (obbligatorio per cosmosdb_nosql)
--database-type Tipo di database: mssql, postgresqlmysql, , cosmosdb_postgresql,cosmosdb_nosql
--set-session-context Abilitare il contesto della sessione di SQL Server (solo mssql)

GraphQL

Opzione Riassunto
--graphql.disabled Deprecated. Disabilita GraphQL (usare --graphql.enabled false)
--graphql.enabled Abilitare GraphQL (valore predefinito true)
--graphql.multiple-create.enabled Consenti più mutazioni di creazione (impostazione predefinita false)
--graphql.path Prefisso dell'endpoint GraphQL (predefinito /graphql)
--graphql-schema Percorso dello schema GraphQL (obbligatorio per cosmosdb_nosql)

Host e autenticazione

Opzione Riassunto
--host-mode Modalità host: sviluppo o produzione (produzione predefinita)
--cors-origin Elenco origini consentite (delimitato da virgole)
--runtime.base-route Prefisso globale per tutti gli endpoint

MCP

Opzione Riassunto
--mcp.disabled Deprecated. Disabilita MCP (usare --mcp.enabled false)
--mcp.enabled Abilitare MCP (valore predefinito true)
--mcp.path Prefisso dell'endpoint MCP (predefinito /mcp)

Annotazioni

La funzionalità MCP farà parte della versione 1.7.

REST

Opzione Riassunto
--rest.disabled Deprecated. Disabilita REST (usare --rest.enabled false)
--rest.enabled Abilitare REST (impostazione predefinita true, preferire rispetto --rest.disableda )
--rest.path Prefisso dell'endpoint REST (/api predefinito, ignorato per cosmosdb_nosql)
--rest.request-body-strict Applicare la convalida rigorosa del corpo della richiesta (impostazione predefinita true, ignorata per cosmosdb_nosql)

Importante

Non combinare i nuovi --*.enabled flag e i flag legacy --*.disabled per lo stesso sottosistema nello stesso comando. Preferisce il --*.enabled modello; le --rest.disabledopzioni , --graphql.disablede --mcp.disabled registrano gli avvisi e verranno rimossi nelle versioni future.

-c, --config

Nome del file di configurazione di output. Il valore predefinito è dab-config.json.

Example

dab init --database-type mssql --config dab-config.local.json

Configurazione risultante

{
  "data-source": {
    "database-type": "mssql",
    "connection-string": "@env('MSSQL_CONNECTION_STRING')"
  }
}

--auth.audience

Attestazione del gruppo di destinatari JWT.

Example

dab init --database-type mssql --auth.audience "https://example.com/api"

Configurazione risultante

{
  "runtime": {
    "authentication": {
      "audience": "https://example.com/api"
    }
  }
}

--auth.issuer

Attestazione dell'autorità di certificazione JWT.

Example

dab init --database-type mssql --auth.issuer "https://login.microsoftonline.com/{tenant-id}/v2.0"

Configurazione risultante

{
  "runtime": {
    "authentication": {
      "issuer": "https://login.microsoftonline.com/{tenant-id}/v2.0"
    }
  }
}

--auth.provider

Provider di identità. Il valore predefinito è StaticWebApps.

Example

dab init --database-type mssql --auth.provider AzureAD

Configurazione risultante

{
  "runtime": {
    "authentication": {
      "provider": "AzureAD"
    }
  }
}

--connection-string

Stringa di connessione del database. Supporta @env().

Example

dab init --database-type mssql --connection-string "@env('MSSQL_CONNECTION_STRING')"

Configurazione risultante

{
  "data-source": {
    "connection-string": "@env('MSSQL_CONNECTION_STRING')"
  }
}

--cors-origin

Elenco delimitato da virgole di origini consentite.

Example

dab init --database-type mssql --cors-origin "https://app.example.com,https://admin.example.com"

Configurazione risultante

{
  "runtime": {
    "cors": {
      "origins": [ "https://app.example.com", "https://admin.example.com" ]
    }
  }
}

--cosmosdb_nosql-container

Nome del contenitore NoSQL di Cosmos DB.

Example

dab init --database-type cosmosdb_nosql --cosmosdb_nosql-container MyContainer

Configurazione risultante

{
  "data-source": {
    "database-type": "cosmosdb_nosql",
    "options": {
      "container": "MyContainer"
    }
  }
}

--cosmosdb_nosql-database

Nome del database NoSQL di Cosmos DB. Obbligatorio per cosmosdb_nosql.

Example

dab init --database-type cosmosdb_nosql --cosmosdb_nosql-database MyDb

Configurazione risultante

{
  "data-source": {
    "database-type": "cosmosdb_nosql",
    "options": {
      "database": "MyDb"
    }
  }
}

--database-type

Specifica il motore di database di destinazione. Valori supportati: mssql, mysql, postgresql, cosmosdb_postgresql, cosmosdb_nosql.

Example

dab init --database-type mssql

Configurazione risultante

{
  "data-source": {
    "database-type": "mssql"
  }
}

--graphql.disabled

Deprecated. Disabilita GraphQL. Preferisce --graphql.enabled false.

--graphql.enabled

Abilitare l'endpoint GraphQL. Il valore predefinito è true.

Example

dab init --database-type mssql --graphql.enabled false

Configurazione risultante

{
  "runtime": {
    "graphql": {
      "enabled": false
    }
  }
}

--graphql.multiple-create.enabled

Consente la creazione di più righe in una singola mutazione. Il valore predefinito è false.

Example

dab init --database-type mssql --graphql.multiple-create.enabled true

Configurazione risultante

{
  "runtime": {
    "graphql": {
      "multiple-create": { "enabled": true }
    }
  }
}

--graphql.path

Prefisso dell'endpoint GraphQL. Il valore predefinito è /graphql.

Example

dab init --database-type mssql --graphql.path /gql

Configurazione risultante

{
  "runtime": {
    "graphql": {
      "path": "/gql"
    }
  }
}

--graphql-schema

Percorso di un file di schema GraphQL. Obbligatorio per cosmosdb_nosql.

Example

dab init --database-type cosmosdb_nosql --graphql-schema ./schema.gql

Configurazione risultante

{
  "runtime": {
    "graphql": {
      "schema": "./schema.gql"
    }
  }
}

--host-mode

Modalità host. Il valore predefinito è Production.

Valori validi: Development, Production.

Example

dab init --database-type mssql --host-mode development

Configurazione risultante

{
  "runtime": {
    "host": {
      "mode": "development"
    }
  }
}

--mcp.disabled

Deprecated. Disabilita MCP. Preferisce --mcp.enabled false.

--mcp.enabled

Abilitare l'endpoint MCP. Il valore predefinito è true.

Example

dab init --database-type mssql --mcp.enabled false

Configurazione risultante

{
  "runtime": {
    "mcp": {
      "enabled": false
    }
  }
}

--mcp.path

Prefisso dell'endpoint MCP. Il valore predefinito è /mcp.

Example

dab init --database-type mssql --mcp.path /model

Configurazione risultante

{
  "runtime": {
    "mcp": {
      "path": "/model"
    }
  }
}

--rest.disabled

Deprecated. Disabilita REST. Preferisce --rest.enabled false.

--rest.enabled

Abilitare l'endpoint REST. Il valore predefinito è true.

Example

dab init --database-type mssql --rest.enabled false

Configurazione risultante

{
  "runtime": {
    "rest": {
      "enabled": false
    }
  }
}

--rest.path

Prefisso dell'endpoint REST. Il valore predefinito è /api.

Annotazioni

Ignorato per cosmosdb_nosql.

Example

dab init --database-type mssql --rest.path /rest

Configurazione risultante

{
  "runtime": {
    "rest": {
      "path": "/rest"
    }
  }
}

--rest.request-body-strict

Controlla la gestione di campi aggiuntivi nei corpi delle richieste. Il valore predefinito è true.

  • true: rifiuta campi estranei (HTTP 400).
  • false: ignora i campi aggiuntivi.

Annotazioni

Ignorato per cosmosdb_nosql.

Example

dab init --database-type mssql --rest.request-body-strict false

Configurazione risultante

{
  "runtime": {
    "rest": {
      "request-body-strict": false
    }
  }
}

--runtime.base-route

Prefisso globale anteporto a tutti gli endpoint. Deve iniziare con /.

Example

dab init --database-type mssql --runtime.base-route /v1

Configurazione risultante

{
  "runtime": {
    "base-route": "/v1"
  }
}

--set-session-context

Abilitare l'invio di dati a SQL Server usando il contesto di sessione. Valido solo per mssql. Il valore predefinito è false.

Example

dab init --database-type mssql --set-session-context true

Configurazione risultante

{
  "runtime": {
    "mssql": {
      "set-session-context": true
    }
  }
}