Azure Functions 中支援的語言
本文說明針對您使用 Azure Functions 時的慣用語言所提供的支援層級。 同時說明使用非原生支援語言建立函數的策略。
支援有兩種等級:
- 正式推出 (GA) - 完整支援且已核准用於生產環境。
- 預覽 - 尚未支援,但預期未來會進入 GA 狀態。
依執行階段版本的語言
下表顯示 Azure Functions 支援的 .NET 版本。 在文章頂端選取您慣用的開發語言。
支援的 .NET 版本取決於 Functions 執行階段版本和您選擇的執行模型:
您的函數程式碼在個別的 .NET 背景工作處理序中執行。 搭配支援的 .NET 和 .NET Framework 版本使用。 若要深入了解,請參閱開發 .NET 隔離式背景工作處理序函數。
支援的版本 | 支援層級 | 預期的社群 EOL 日期 |
---|---|---|
.NET 9 | 預覽 | 請參閱原則 |
.NET 8 | GA | 2026 年 11 月 10 日 |
.NET 6 | GA | 2024 年 11 月 12 日 |
.NET Framework 4.8.1 | GA | 請參閱原則 |
.NET 7 先前在隔離式背景工作角色模型上受到支援,但於 2024 年 5 月 14 日終止正式支援。
如需詳細資訊,請參閱在隔離式背景工作處理序中執行 C# Azure Functions 的指南。
下表顯示 JAVA 函式支援的語言版本。 在文章頂端選取您慣用的開發語言。
支援的版本 | 支援層級 | 預期的社群 EOL 日期 |
---|---|---|
JAVA 21 (僅限 Linux) | 預覽 | 2028 年 9 月 |
JAVA 17 | GA | 2027 年 9 月 |
Java 11 | GA | 2027 年 9 月 |
Java 8 | GA | 2026 年 11 月 30 日 |
如需詳細資訊,請參閱 Azure Functions JAVA 開發人員指南。
下表顯示 Node.js 函式支援的語言版本。 在文章頂端選取您慣用的開發語言。
支援的版本 | 支援層級 | 預期的社群 EOL 日期 |
---|---|---|
Node.js 22 | 預覽 | 2027 年 4 月 30 日 |
Node.js 20 | GA | 2026 年 4 月 30 日 |
Node.js 18 | GA | 2025 年 4 月 30 日 |
透過轉譯至 JavaScript 支援 TypeScript。 如需詳細資訊,請參閱 Azure Functions Node.js 開發人員指南 (部分機器翻譯)。
下表顯示 PowerShell 函式支援的語言版本。 在文章頂端選取您慣用的開發語言。
支援的版本 | 支援層級 | 預期的社群 EOL 日期 |
---|---|---|
PowerShell 7.4 | GA | 2026 年 11 月 10 日 |
PowerShell 7.2 | GA | 2024 年 11 月 8 日 |
如需詳細資訊,請參閱 Azure Functions PowerShell 開發人員指南 (部分機器翻譯)。
下表顯示 Python 函式支援的語言版本。 在文章頂端選取您慣用的開發語言。
支援的版本 | 支援層級 | 預期的社群 EOL 日期 |
---|---|---|
Python 3.11 | GA | 2027 年 10 月 |
Python 3.10 | GA | 2026 年 10 月 |
Python 3.9 | GA | 2025 年 10 月 |
Python 3.8 | GA | 2024 年 10 月 |
如需詳細資訊,請參閱 Azure Functions Python 開發人員指南 (部分機器翻譯)。
如需語言支援變更規劃的相關資訊,請參閱 Azure 藍圖。
語言支援詳細資訊
下表顯示 Functions 支援哪些語言可以在 Linux 或 Windows 上執行。 這也指出您的語言是否支援在 Azure 入口網站中編輯。 語言是根據在 Azure 入口網站中建立函數應用程式時選擇的 [執行階段堆疊] 選項。 這與在 Azure Functions Core Tools 中使用 func init
命令時的 --worker-runtime
選項相同。
語言 | 執行階段堆疊 | Linux | Windows | 入口網站內編輯 |
---|---|---|---|---|
C# (隔離式背景工作角色模型) | .NET | ✓ | ✓ | |
C# (內含式模型) | .NET | ✓ | ✓ | |
C# 指令碼 | .NET | ✓ | ✓ | ✓ |
JavaScript | Node.js | ✓ | ✓ | ✓ |
Python | Python | ✓ | X | ✓ |
Java | Java | ✓ | ✓ | |
PowerShell | PowerShell Core | ✓ | ✓ | ✓ |
TypeScript | Node.js | ✓ | ✓ | |
Go/Rust/其他 | 自訂處理常式 | ✓ | ✓ |
如需作業系統和語言支援的詳細資訊,請參閱作業系統/執行時間支援。
無法在入口網站內編輯時,您必須改為在本機開發函數。
語言主要版本支援
Azure Functions 保證支援所支援程式設計語言的主要版本。 大部分的語言都會發行次要版本或修補檔版本,更新支援的主要版本。 次要或修補檔版本的範例包括 Python 3.9.1 和 Node 14.17。 支援語言的新次要版本發行後,函數應用程式使用的次要版本會自動升級為這些較新的次要版本或修補檔版本。
注意
因為 Azure Functions 可在新次要版本發行後,隨時不支援舊版次要版本,所以您不應將函數應用程式鎖定程式設計語言的特定次要/修補檔版本。
自訂處理常式
自訂處理常式是輕量 Web 伺服器,從 Azure Functions 主機接收事件。 任何支援 HTTP 基元的語言都可以實作自訂處理常式。 這表示自訂處理常式可用來以非正式支援的語言建立函數。 若要深入了解,請參閱 Azure Functions 自訂處理常式 (機器翻譯)。
語言擴充性
2.x 版起,執行階段設計為具語言擴充性。 2.x 執行階段中的 JavaScript 和 Java 語言是使用此擴充性來建置。
ODBC 驅動程式支援
下表指出 Python 函數的 ODBC 驅動程式支援:
驅動程式版本 | Python 版本 |
---|---|
ODBC 驅動程式 18 | ≥ Python 3.11 |
ODBC 驅動程式 17 | ≤ Python 3.10 |
下一步
.NET 隔離式背景工作處理序參考 (部分機器翻譯)。
Node.js 開發人員參考 (部分機器翻譯)