You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Static Web App部署时如何在Azure DevOps替换Blazor的appsettings.json值

解决方案

步骤1:定义流水线变量

你可以选择两种方式定义要替换的配置值:

  • 方式1:直接在YAML头部添加variables块
variables:
  ApiUrl: "你的生产环境API地址,例如https://your-function-app.azurewebsites.net/api/"
  • 方式2:在Azure DevOps流水线编辑界面的「变量」面板中添加,存储敏感值时可以勾选「保密变量」选项。
    注意:变量名必须和appsettings.json中的配置键完全匹配,嵌套键使用.连接层级即可

步骤2:添加JSON配置替换任务

在AzureStaticWebApp@0部署任务之前,插入FileTransform@2官方任务,用来动态替换appsettings.json的内容,修改后的完整流水线YAML如下:

trigger:
  - main
pool:
  vmImage: ubuntu-latest
variables:
  # 此处配置也可以移到流水线变量面板中设置
  ApiUrl: "https://your-prod-api-endpoint/api/"
steps:
  - checkout: self
    submodules: true
  # 新增的配置替换任务
  - task: FileTransform@2
    inputs:
      folderPath: '$(Build.SourcesDirectory)/Atlas.Blazor'
      jsonTargetFiles: 'appsettings.json'
  - task: AzureStaticWebApp@0
    inputs:
      app_location: '/Atlas.Blazor'
      api_location: '/Atlas.InternalHost'
      output_location: '/wwwroot'
      azure_static_web_apps_api_token: $(deployment_token)

步骤3:验证替换效果

任务执行时会自动匹配变量名和JSON键完成替换,之后再执行静态Web App的打包部署,你可以在部署完成后访问站点的/appsettings.json路径,确认配置是否已更新为目标值。

内容的提问来源于stack exchange,提问作者Murdock

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 23:24:05