你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

配置 Azure 静态Web 应用 CLI

Azure 静态Web 应用 (SWA) CLI 通过以下两种方式之一获取静态 Web 应用的配置信息:

  • CLI 选项(在运行时传入)
  • 名为 swa-cli.config.json 的 CLI 配置文件

注意

默认情况下,SWA CLI 在当前目录中查找名为 swa-cli.config.json的 配置文件。

配置文件可以包含多个配置,每个配置都由唯一的配置名称标识。

  • 如果swa-cli.config.json文件中仅存在单个配置,swa start则默认使用它。

  • 如果从配置文件加载选项,则忽略命令行选项。

示例配置文件

以下代码片段显示了配置文件的形状。

{
  "configurations": {
    "app": {
      "appDevserverUrl": "http://localhost:3000",
      "apiLocation": "api",
      "run": "npm run start",
      "swaConfigLocation": "./my-app-source"
    }
  }
}

如果只有一个配置节,如此示例所示,则 swa start 命令会自动使用这些值。

初始化配置文件

可以使用命令初始化配置文件 swa init 。 如果针对现有项目运行命令,则 swa init 尝试猜测配置设置。

默认情况下,该过程会在 项目的当前工作目录中的swa-cli.config.json 中创建这些设置。 此目录是搜索项目配置值时使用 swa 的默认文件名和位置。

swa --config <PATH>

如果文件仅包含一个命名配置,则默认使用该配置。 如果定义了多个配置,则将所需的配置名称作为选项传入。

swa --<CONFIG_NAME>

使用配置文件选项时,设置以 JSON 格式存储。 创建后,可以手动编辑文件以更新设置或使用 swa init 更新。

查看配置

静态 WebS CLI 提供了一个选项 --print-config ,以便可以查看当前配置。

下面是使用默认设置在新项目上运行时该输出的外观的示例。

swa --print-config

Options:
 - port: 4280
 - host: localhost
 - apiPort: 7071
 - appLocation: .
 - apiLocation: <undefined>
 - outputLocation: .
 - swaConfigLocation: <undefined>
 - ssl: false
 - sslCert: <undefined>
 - sslKey: <undefined>
 - appBuildCommand: <undefined>
 - apiBuildCommand: <undefined>
 - run: <undefined>
 - verbose: log
 - serverTimeout: 60
 - open: false
 - githubActionWorkflowLocation: <undefined>
 - env: preview
 - appName: <undefined>
 - dryRun: false
 - subscriptionId: <undefined>
 - resourceGroupName: <undefined>
 - tenantId: <undefined>
 - clientId: <undefined>
 - clientSecret: <undefined>
 - useKeychain: true
 - clearCredentials: false
 - config: swa-cli.config.json
 - printConfig: true

运行 swa --print-config 提供的当前配置默认值。

注意

如果项目尚未定义配置文件,则会自动触发 swa init 工作流来帮助创建配置文件。

验证配置

可以根据以下架构验证 swa-cli.config.json 文件: https://aka.ms/azure/static-web-apps-cli/schema