本文介绍使用 Azure Functions 时为首选语言提供的支持级别。 它还介绍了使用不受本机支持的语言创建函数时可使用的策略。
支持级别
有两个级别的支持:
- 正式发布 (GA) - 完全支持并获得批准在生产中使用。
- 预览版 - 尚不受支持,但预计将来会达到正式发布状态。
按运行时版本列出的语言
语言 | 1.x | 2.x1 | 3.x1 | 4.x |
---|---|---|---|---|
C# | GA (.NET Framework 4.8) | GA (.NET Core 2.1) | GA (.NET Core 3.1) |
GA (.NET 6.0) GA (.NET 7.0) GA (.NET Framework 4.8) |
JavaScript | GA(Node.js 6) | GA(Node.js 10 和 8) | GA(Node.js 14、12 和 10) | GA(Node.js 18、16 和 14) |
F# | GA (.NET Framework 4.8) | GA (.NET Core 2.11) | GA (.NET Core 3.1) | GA (.NET 6.0) GA(.NET 7.0) |
爪哇岛 | 空值 | GA(Java 8) | GA(Java 11 和 8) | GA(Java 11 和 8) 正式版 (Java 17) |
PowerShell | 空值 | 空值 | 空值 | GA(PowerShell 7.2) |
Python | 空值 | GA (Python 3.7) | GA(Python 3.9、3.8、3.7) | GA (Python 3.10、3.9、3.8、3.7) |
TypeScript2 | 空值 | 乔治亚州 | 乔治亚州 | 乔治亚州 |
1 于 2022 年 12 月 13 日结束生命(EOL)。 强烈建议将 应用迁移到版本 4.x ,以获取完全支持。
2 支持通过转译到 JavaScript 实现。
若要更详细地了解受支持的语言版本,请参阅语言特定的开发人员指南文章。
有关语言支持计划内更改的信息,请参阅 Azure 路线图。
语言支持详细信息
下表显示了可在 Linux 或 Windows 上运行的 Functions 支持的语言, 还说明了你的语言是否支持在 Azure 门户中进行编辑。 该语言基于在 Azure 门户中创建函数应用时选择的运行时堆栈选项。 当在 Azure Functions Core Tools 中使用--worker-runtime
命令时,此值与func init
选项相同。
语言 | 运行时堆栈 | Linux | Windows操作系统 | 门户内编辑 |
---|---|---|---|---|
C#(独立辅助角色模型) | .NET | ✓ | ✓ | |
C# (进程内模型) | .NET | ✓ | ✓ | |
C# 脚本 | .NET | ✓ | ✓ | ✓ |
JavaScript | Node.js | ✓ | ✓ | ✓ |
Python | Python语言 | ✓ | X | ✓ |
爪哇岛 | 爪哇岛 | ✓ | ✓ | |
PowerShell | PowerShell Core | ✓ | ✓ | ✓ |
TypeScript | Node.js | ✓ | ✓ | |
Go/Rust/其他 | 自定义处理程序 | ✓ | ✓ |
有关作系统和语言支持的详细信息,请参阅 作系统支持。
当门户中编辑功能不可用时,必须改为在本地开发函数。
若要详细了解如何在 Azure 中运行函数时保持完全支持覆盖,请参阅 Azure Functions 语言堆栈支持策略。
语言主版本支持
Azure Functions 为支持的编程语言的主版本提供了支持保证。 大多数语言都会发布次要版本或补丁版本来更新受支持的主版本。 例如,Python 3.9.1 和 Node 14.17 就是次要版本或补丁版本。 支持的语言的新次要版本发布后,函数应用使用的次要版本将自动升级到这些较新的次要版本或补丁版本。
注意
因为 Azure Functions 可以在新的次要版本发布后随时删除对旧次要版本的支持,所以不应将函数应用固定到编程语言的特定次要/补丁版本。
自定义处理程序
自定义处理程序是可以从 Azure Functions 主机接收事件的轻型 Web 服务器。 支持 HTTP 基元的任何语言都可以实现自定义处理程序。 这意味着可以使用自定义处理程序以不受官方支持的语言创建函数。 有关详细信息,请参阅 Azure Functions 自定义处理程序。
语言扩展性
从版本 2.x 开始,运行时旨在提供 语言扩展性。 2\.x 运行时中的 JavaScript 和 Java 语言是使用此扩展性生成的。
ODBC 驱动程序支持
此表显示 Python 函数的 ODBC 驱动程序支持:
驱动程序版本 | Python 版本 |
---|---|
ODBC 驱动程序 18 | ≥ Python 3.11 |
ODBC 驱动程序 17 | ≤ Python 3.10 |