你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
前端 Web 应用程序通常为数据和服务调用后端 API。 默认情况下,Azure Static Web Apps 通过 Azure Functions 提供内置无服务器 API 终结点。
Static Web Apps 中的 Azure Functions API 有两种可能的配置,具体取决于托管计划:
托管函数:默认情况下,静态 Web 应用的 API 是与某些限制关联的 Azure Static Web Apps 所托管和部署的 Azure Functions 应用程序。
创建自己的函数:你可以选择针对任何计划类型提供现有 Azure Functions 应用程序,其中包括 Azure Functions 的所有功能。 使用此配置,用户需负责单独部署此 Functions 应用。
下表对比了使用托管函数和现有函数之间的差异。
功能 | 托管函数 | 创建自己的函数 |
---|---|---|
访问 Azure Functions 触发器和绑定 | 仅 HTTP | 全部 |
支持的 Azure Functions 运行时1 | 请参阅支持的语言和运行时。 | All |
支持 Azure Functions 托管计划 | 消耗 | 消耗 高级 专用 |
集成安全性,可直接访问用户身份验证和基于角色的授权数据 | ✔ | ✔ |
路由集成,可向 Web 应用安全地提供 /api 路由,而无需自定义 CORS 规则。 |
✔ | ✔ |
Durable Functions 编程模型 | ✕ | ✔ |
托管的标识 | ✕ | ✔ |
Azure 应用服务身份验证和授权令牌管理 | ✕ | ✔ |
Azure Static Web Apps 外部的可用 API 函数 | ✕ | ✔ |
密钥保管库引用 | ✕ | ✔ |
1 若要在托管函数中指定运行时版本,请向前端应用添加配置文件并设置 apiRuntime
属性。 支持受 Azure Functions 语言运行时支持策略的影响。
Static Web Apps 的 API 选项包括以下 Azure 服务:
有关详细信息,请参阅 API 概述。
配置
API 终结点通过 api
路由向 Web 应用提供。
托管函数 | 创建自己的函数 |
---|---|
虽然 /api 路由已固定,但你可以控制托管函数应用的源代码文件夹位置。 可以通过编辑工作流 YAML 文件来改变此位置,该文件位于存储库的 .github/workflows 文件夹中的。 |
对 /api 路由的请求将发送到现有 Azure Functions 应用。 |
故障排除和日志
仅当添加 Application Insights 时,日志才可用。
托管函数 | 创建自己的函数 |
---|---|
通过启用静态 Web 应用上的 Application Insights,启用日志记录。 | 通过启用 Azure Functions 应用上的 Application Insights,启用日志记录。 |
约束
除了 Static Web Apps API 约束,以下限制也适用于 Azure Functions API:
托管函数 | 创建自己的函数 |
---|---|
|
|