Udostępnij za pośrednictwem


init polecenie

Zainicjuj nowy plik konfiguracji konstruktora interfejsu API danych. Wynikowy kod JSON przechwytuje szczegóły źródła danych, włączone punkty końcowe (REST, GraphQL, MCP), uwierzytelnianie i zachowanie środowiska uruchomieniowego.

Składnia

dab init [options]

Jeśli plik konfiguracji docelowej już istnieje, polecenie go zastępuje. Nie ma scalania. Użyj kontroli wersji lub kopii zapasowych, jeśli chcesz zachować poprzedni plik.

Szybki rzut oka

Option Podsumowanie
-c, --config Nazwa pliku konfiguracji wyjściowej (domyślna dab-config.json)

Sekcja uwierzytelniania

Option Podsumowanie
--auth.audience Oświadczenie odbiorców tokenu internetowego JSON (JWT)
--auth.issuer Oświadczenie wystawcy tokenu internetowego JSON (JWT)
--auth.provider Dostawca tożsamości (ustawienie domyślne Unauthenticated)

Sekcja Źródło danych

Option Podsumowanie
--connection-string Parametry połączenia bazy danych (obsługuje @env())
--cosmosdb_nosql-container Nazwa kontenera NoSQL usługi Cosmos DB (opcjonalnie)
--cosmosdb_nosql-database Nazwa bazy danych NoSQL usługi Cosmos DB (wymagana dla cosmosdb_nosql)
--database-type Typ bazy danych: mssql, , mysqlpostgresql, , cosmosdb_postgresqlcosmosdb_nosql
--set-session-context Włączanie kontekstu sesji programu SQL Server (tylko mssql)

Sekcja GraphQL

Option Podsumowanie
--graphql.disabled Deprecated. Wyłącza narzędzie GraphQL (użyj --graphql.enabled falsepolecenia )
--graphql.enabled Włącz język GraphQL (wartość domyślna true)
--graphql.multiple-create.enabled Zezwalaj na wiele mutacji tworzenia (wartość domyślna false)
--graphql.path Prefiks punktu końcowego GraphQL (domyślny /graphql)
--graphql-schema Ścieżka do schematu GraphQL (wymagane dla cosmosdb_nosql)

Sekcja Host i uwierzytelnianie

Option Podsumowanie
--host-mode Tryb hosta: programowanie lub produkcja (domyślna produkcja)
--cors-origin Lista dozwolonych źródeł (rozdzielona przecinkami)
--runtime.base-route Globalny prefiks dla wszystkich punktów końcowych

Sekcja MCP

Option Podsumowanie
--mcp.aggregate-records.query-timeout Limit czasu narzędzia Agregacja rekordów w sekundach (domyślnie 30, zakres 1–600)
--mcp.disabled Deprecated. Wyłącza mcp (użyj --mcp.enabled false)
--mcp.enabled Włącz mcp (wartość domyślna true)
--mcp.path Prefiks punktu końcowego MCP (domyślny /mcp)

Uwaga / Notatka

Funkcja MCP jest dostępna w wersji i nowszych 1.7 wersjach.

Sekcja REST

Option Podsumowanie
--rest.disabled Deprecated. Wyłącza interfejs REST (użyj --rest.enabled false)
--rest.enabled Włącz interfejs REST (wartość domyślna true, preferuj ponad --rest.disabled)
--rest.path Prefiks punktu końcowego REST (domyślny /api, ignorowany dla cosmosdb_nosql)
--rest.request-body-strict Wymuszanie ścisłej weryfikacji treści żądania (domyślna wartość false, ignorowana dla cosmosdb_nosql)

Ważne

Nie mieszaj nowych --*.enabled flag i starszych --*.disabled flag dla tego samego podsystemu w tym samym poleceniu. Preferuj --*.enabled--rest.disabledwzorzec; ostrzeżenia dziennika , --graphql.disabledi --mcp.disabled opcje zostaną usunięte w przyszłych wersjach.

-c, --config

Nazwa pliku konfiguracji wyjściowej. Wartość domyślna to dab-config.json.

Example

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

Wynikowa konfiguracja

{
  "data-source": {
    "database-type": "mssql",
    "connection-string": ""
  }
}

--auth.audience

Oświadczenie odbiorców tokenu internetowego JSON (JWT).

Example

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

Wynikowa konfiguracja

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

--auth.issuer

Oświadczenie wystawcy tokenu internetowego JSON (JWT).

Example

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

Wynikowa konfiguracja

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

--auth.provider

Dostawca tożsamości. Wartość domyślna to Unauthenticated.

Gdy Unauthenticated jest aktywny, język DAB nie sprawdza ani nie weryfikuje żadnego zestawu JWT. Wszystkie żądania są uruchamiane jako anonymous. Inna usługa może uwierzytelniać lub filtrować żądania, zanim dotrą do języka DAB, ale usługa DAB nadal autoryzuje tylko jako anonymous. Aby użyć innego dostawcy, ustaw go jawnie.

Aby uzyskać wskazówki dotyczące konfiguracji, zobacz Konfigurowanie nieuwierzytelnionego dostawcy.

Uwaga / Notatka

Funkcja narzędzia Data API Builder 2.0 opisana w tej sekcji jest obecnie dostępna w wersji zapoznawczej i może ulec zmianie przed ogólną dostępnością. Aby uzyskać więcej informacji, zobacz Co nowego w wersji 2.0.

Prawidłowe wartości: Unauthenticated, , StaticWebAppsEntraID, AzureADAppService, , Simulator, Custom.

Ważne

Dostawcy inni niż Unauthenticated, StaticWebAppsi Simulator wymagają --auth.audience i --auth.issuer.

Example

dab init \
  --database-type mssql \
  --auth.provider AzureAD \
  --auth.audience "https://example.com/api" \
  --auth.issuer "https://login.microsoftonline.com/{tenant-id}/v2.0"

Wynikowa konfiguracja

{
  "runtime": {
    "host": {
      "authentication": {
        "provider": "AzureAD",
        "jwt": {
          "audience": "https://example.com/api",
          "issuer": "https://login.microsoftonline.com/{tenant-id}/v2.0"
        }
      }
    }
  }
}

--connection-string

Parametry połączenia bazy danych. Obsługuje element @env().

Example

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

Wynikowa konfiguracja

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

--cors-origin

Rozdzielona przecinkami lista dozwolonych źródeł.

Example

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

Wynikowa konfiguracja

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

--cosmosdb_nosql-container

Nazwa kontenera NoSQL usługi Cosmos DB.

Example

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

Wynikowa konfiguracja

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

--cosmosdb_nosql-database

Nazwa bazy danych NoSQL usługi Cosmos DB. Wymagane dla elementu cosmosdb_nosql.

Example

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

Wynikowa konfiguracja

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

--database-type

Określa docelowy aparat bazy danych. Obsługiwane wartości: mssql, mysql, postgresql, cosmosdb_postgresql, cosmosdb_nosql.

Example

dab init \
  --database-type mssql

Wynikowa konfiguracja

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

--graphql.disabled

Deprecated. Wyłącza narzędzie GraphQL. Preferuj --graphql.enabled false.

--graphql.enabled

Włącz punkt końcowy GraphQL. Wartość domyślna to true.

Example

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

Wynikowa konfiguracja

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

--graphql.multiple-create.enabled

Umożliwia utworzenie wielu wierszy w jednej mutacji. Wartość domyślna to false.

Example

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

Wynikowa konfiguracja

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

--graphql.path

Prefiks punktu końcowego GraphQL. Wartość domyślna to /graphql.

Example

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

Wynikowa konfiguracja

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

--graphql-schema

Ścieżka do pliku schematu GraphQL. Wymagane dla elementu cosmosdb_nosql.

Example

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

Wynikowa konfiguracja

{
  "data-source": {
    "database-type": "cosmosdb_nosql",
    "options": {
      "schema": "./schema.gql"
    }
  }
}

--host-mode

Tryb hosta. Wartość domyślna to Production.

Prawidłowe wartości: Development, Production.

Example

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

Wynikowa konfiguracja

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

--mcp.aggregate-records.query-timeout

Limit czasu wykonywania w sekundach dla narzędzia MCP agregacji rekordów. Wartość domyślna to 30. Zakres: 1600.

Example

dab init \
  --database-type mssql \
  --mcp.aggregate-records.query-timeout 60

Wynikowa konfiguracja

{
  "runtime": {
    "mcp": {
      "dml-tools": {
        "aggregate-records": {
          "query-timeout": 60
        }
      }
    }
  }
}

--mcp.disabled

Deprecated. Wyłącza mcp. Preferuj --mcp.enabled false.

--mcp.enabled

Włącz punkt końcowy MCP. Wartość domyślna to true.

Example

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

Wynikowa konfiguracja

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

--mcp.path

Prefiks punktu końcowego MCP. Wartość domyślna to /mcp.

Example

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

Wynikowa konfiguracja

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

--rest.disabled

Deprecated. Wyłącza interfejs REST. Preferuj --rest.enabled false.

--rest.enabled

Włącz punkt końcowy REST. Wartość domyślna to true.

Example

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

Wynikowa konfiguracja

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

--rest.path

Prefiks punktu końcowego REST. Wartość domyślna to /api.

Uwaga / Notatka

Zignorowano dla elementu cosmosdb_nosql.

Example

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

Wynikowa konfiguracja

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

--rest.request-body-strict

Steruje obsługą dodatkowych pól w jednostkach żądań. Wartość domyślna to false.

  • true: Odrzuca pola nadmiarowe (HTTP 400).
  • false: ignoruje dodatkowe pola.

Uwaga / Notatka

Zignorowano dla elementu cosmosdb_nosql.

Example

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

Wynikowa konfiguracja

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

--runtime.base-route

Prefiks globalny poprzedzony wszystkimi punktami końcowymi. Musi zaczynać się od /.

Ważne

Ta opcja wymaga, aby dostawca uwierzytelniania był .StaticWebApps Ustaw --auth.provider StaticWebApps obok --runtime.base-route.

Example

dab init \
  --database-type mssql \
  --auth.provider StaticWebApps \
  --runtime.base-route /v1

Wynikowa konfiguracja

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

--set-session-context

Włącz wysyłanie danych do programu SQL Server przy użyciu kontekstu sesji. Tylko prawidłowe dla mssqlelementu . Wartość domyślna to false.

Example

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

Wynikowa konfiguracja

{
  "data-source": {
    "database-type": "mssql",
    "options": {
      "set-session-context": true
    }
  }
}