Bagikan melalui


init perintah

Menginisialisasi file konfigurasi penyusun Data API baru. JSON yang dihasilkan menangkap detail sumber data, titik akhir yang diaktifkan (REST, GraphQL, MCP), autentikasi, dan perilaku runtime.

Syntax

dab init [options]

Jika file konfigurasi target sudah ada, perintah akan menimpanya. Tidak ada penggabungan. Gunakan kontrol versi atau cadangan jika Anda perlu mempertahankan file sebelumnya.

Sekilas

Option Ringkasan
-c, --config Nama file konfigurasi output (dab-config.jsondefault )

Authentication

Option Ringkasan
--auth.audience Klaim audiens JWT
--auth.issuer Klaim penerbit JWT
--auth.provider Penyedia identitas (StaticWebApps default)

Sumber data

Option Ringkasan
--connection-string String koneksi database (mendukung @env())
--cosmosdb_nosql-container Nama kontainer Cosmos DB NoSQL (opsional)
--cosmosdb_nosql-database Nama database Cosmos DB NoSQL (diperlukan untuk cosmosdb_nosql)
--database-type Jenis database: mssql, mysql, postgresql, cosmosdb_postgresql, cosmosdb_nosql
--set-session-context Aktifkan konteks sesi SQL Server (hanya mssql)

GraphQL

Option Ringkasan
--graphql.disabled Deprecated. Menonaktifkan GraphQL (gunakan --graphql.enabled false)
--graphql.enabled Aktifkan GraphQL (default true)
--graphql.multiple-create.enabled Perbolehkan beberapa mutasi buat (default false)
--graphql.path Awalan titik akhir GraphQL (default /graphql)
--graphql-schema Jalur ke skema GraphQL (diperlukan untuk cosmosdb_nosql)

Host dan autentikasi

Option Ringkasan
--host-mode Mode host: Pengembangan atau Produksi (Produksi default)
--cors-origin Daftar asal yang diizinkan (dipisahkan koma)
--runtime.base-route Awalan global untuk semua titik akhir

MCP

Option Ringkasan
--mcp.disabled Deprecated. Menonaktifkan MCP (gunakan --mcp.enabled false)
--mcp.enabled Aktifkan MCP (default true)
--mcp.path Awalan titik akhir MCP (default /mcp)

Nota

Kemampuan MCP akan menjadi bagian dari versi 1.7.

REST

Option Ringkasan
--rest.disabled Deprecated. Menonaktifkan REST (gunakan --rest.enabled false)
--rest.enabled Aktifkan REST (default true, prefer over --rest.disabled)
--rest.path Awalan titik akhir REST (default /api, diabaikan untuk cosmosdb_nosql)
--rest.request-body-strict Terapkan validasi isi permintaan yang ketat (default true, diabaikan untuk cosmosdb_nosql)

Penting

Jangan mencampur bendera baru --*.enabled dan bendera warisan --*.disabled untuk subsistem yang sama dalam perintah yang sama. --*.enabled Lebih suka pola; --rest.disabledperingatan log opsi , --graphql.disabled, dan --mcp.disabled dan dan akan dihapus dalam versi mendatang.

-c, --config

Nama file konfigurasi output. Defaultnya adalah dab-config.json.

Example

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

Konfigurasi yang dihasilkan

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

--auth.audience

Klaim audiens JWT.

Example

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

Konfigurasi yang dihasilkan

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

--auth.issuer

Klaim penerbit JWT.

Example

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

Konfigurasi yang dihasilkan

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

--auth.provider

Penyedia identitas. Defaultnya adalah StaticWebApps.

Example

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

Konfigurasi yang dihasilkan

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

--connection-string

String koneksi database. Mendukung @env().

Example

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

Konfigurasi yang dihasilkan

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

--cors-origin

Daftar asal yang diizinkan yang dipisahkan koma.

Example

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

Konfigurasi yang dihasilkan

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

--cosmosdb_nosql-container

Nama kontainer Cosmos DB NoSQL.

Example

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

Konfigurasi yang dihasilkan

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

--cosmosdb_nosql-database

Nama database Cosmos DB NoSQL. Diperlukan untuk cosmosdb_nosql.

Example

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

Konfigurasi yang dihasilkan

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

--database-type

Menentukan mesin database target. Nilai yang didukung: mssql, mysql, postgresql, cosmosdb_postgresql, cosmosdb_nosql.

Example

dab init --database-type mssql

Konfigurasi yang dihasilkan

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

--graphql.disabled

Deprecated. Menonaktifkan GraphQL. Lebih suka --graphql.enabled false.

--graphql.enabled

Aktifkan titik akhir GraphQL. Defaultnya adalah true.

Example

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

Konfigurasi yang dihasilkan

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

--graphql.multiple-create.enabled

Memungkinkan pembuatan beberapa baris dalam satu mutasi. Defaultnya adalah false.

Example

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

Konfigurasi yang dihasilkan

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

--graphql.path

Awalan titik akhir GraphQL. Defaultnya adalah /graphql.

Example

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

Konfigurasi yang dihasilkan

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

--graphql-schema

Jalur ke file skema GraphQL. Diperlukan untuk cosmosdb_nosql.

Example

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

Konfigurasi yang dihasilkan

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

--host-mode

Mode host. Defaultnya adalah Production.

Nilai yang valid: Development, Production.

Example

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

Konfigurasi yang dihasilkan

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

--mcp.disabled

Deprecated. Menonaktifkan MCP. Lebih suka --mcp.enabled false.

--mcp.enabled

Aktifkan titik akhir MCP. Defaultnya adalah true.

Example

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

Konfigurasi yang dihasilkan

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

--mcp.path

Awalan titik akhir MCP. Defaultnya adalah /mcp.

Example

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

Konfigurasi yang dihasilkan

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

--rest.disabled

Deprecated. Menonaktifkan REST. Lebih suka --rest.enabled false.

--rest.enabled

Aktifkan titik akhir REST. Defaultnya adalah true.

Example

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

Konfigurasi yang dihasilkan

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

--rest.path

Awalan titik akhir REST. Defaultnya adalah /api.

Nota

Diabaikan untuk cosmosdb_nosql.

Example

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

Konfigurasi yang dihasilkan

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

--rest.request-body-strict

Mengontrol penanganan bidang tambahan dalam badan permintaan. Defaultnya adalah true.

  • true: Menolak bidang asing (HTTP 400).
  • false: Mengabaikan bidang tambahan.

Nota

Diabaikan untuk cosmosdb_nosql.

Example

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

Konfigurasi yang dihasilkan

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

--runtime.base-route

Awalan global diawali ke semua titik akhir. Harus dimulai dengan /.

Example

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

Konfigurasi yang dihasilkan

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

--set-session-context

Aktifkan pengiriman data ke SQL Server menggunakan konteks sesi. Hanya berlaku untuk mssql. Defaultnya adalah false.

Example

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

Konfigurasi yang dihasilkan

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