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

能否在Azure静态Web应用API中使用Azure Functions V3

自定义构建命令适配Azure Functions V3

你无需删除api_location配置即可正常部署已有V3版本Functions API,只需要修改自动生成的工作流配置即可:

  • 打开仓库.github/workflows目录下的Azure Static Web Apps自动生成的部署yml文件,找到Azure/static-web-apps-deploy@v1的执行步骤
  • 在with参数段新增api_build_command配置,传入V3 Functions对应的编译命令,C#项目示例配置如下:
- name: Build And Deploy
  uses: Azure/static-web-apps-deploy@v1
  with:
    azure_static_web_apps_api_token: ${{ secrets.AZURE_STATIC_WEB_APPS_API_TOKEN_XXXX }}
    app_location: "/" # Blazor应用根路径
    api_location: "api" # 你的V3 Functions项目所在路径
    output_location: "wwwroot" # Blazor构建输出路径
    # 新增自定义API构建命令
    api_build_command: "dotnet publish -c Release -o publish"
  • 如果工作流运行环境默认没有安装V3 Functions对应的.NET Core 3.1 SDK,可以在构建步骤前添加.NET SDK安装步骤,指定版本为3.1.x即可。
V3版本Azure Functions适配角色管理功能

Azure Static Web Apps的角色管理属于平台层级的能力,和绑定的Functions版本没有强制依赖,V3版本Functions可以完美适配角色管理功能:

  • 你可以正常在Functions代码中读取x-ms-client-principal请求头解析当前登录用户的身份、角色信息
  • 自定义角色分配的API也可以正常运行,只要按照平台要求返回对应格式的响应即可,不受Functions版本限制

你之前删除api_location配置后工作流运行正常,是因为删除该配置后工作流会跳过API的构建部署步骤,仅部署静态Blazor应用,不会触发默认针对V2版本Functions的构建逻辑。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 16:27:02