在数据 API 生成器中使用配置文件环境

数据 API 生成器支持多个配置环境,类似于 ASP.NET Core appsettings.json。 可以定义基本配置(dab-config.json)和环境特定的变体(dab-config.Development.jsondab-config.Production.json)。 此功能允许跨环境灵活管理连接字符串、身份验证设置和其他配置更改。

步骤 1:创建基本配置

创建 .env 文件

DEV_CONNECTION_STRING=Server=tcp:127.0.0.1,1433;User ID=<username>;Password=<password>;
PROD_CONNECTION_STRING=Server=tcp:127.0.0.1,1433;User ID=<username>;Password=<password>;

注释

该文件 .env 没有文件名,只有扩展名。

运行 dab init 以创建基本配置文件

dab init --database-type "mssql" --connection-string ""
dab add Book --source "dbo.Books" --permissions "anonymous:*"

此步骤将生成在所有环境中共享的基本 dab-config.json 文件。

步骤 2:添加特定于环境的配置文件

- dab-config.json
- dab-config.Development.json
- dab-config.Production.json

开发配置文件(dab-config.Development.json)

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

生产配置文件 (dab-config.Production.json

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

注释

当设置了 DAB_ENVIRONMENT 时,特定于环境的文件将覆盖基本配置。

步骤 3:使用正确的环境启动 DAB

使用此命令将环境设置为 Development

DAB_ENVIRONMENT=Development dab start

使用此命令将环境设置为 Production

DAB_ENVIRONMENT=Production dab start

注释

如果未设置任何环境,则默认环境为 Production

步骤 4:验证设置

  • REST: http://localhost:5000/api/Book
  • GraphQL: http://localhost:5000/graphql
  • 斯瓦格: http://localhost:5000/swagger
  • 健康: http://localhost:5000/health

Review

  • 使 .env 文件远离版本控制(.gitignore
  • 使用 @env()@akv() 用于机密
  • 使用DAB_ENVIRONMENT可轻松在环境之间切换