Podporované jazyky a moduly runtime ve službě Azure Static Web Apps
Azure Static Web Apps nabízí dvě různá místa, kde jsou důležité moduly runtime a jazykové verze, na front-endu a pro rozhraní API.
Typ modulu runtime | Popis |
---|---|
Front-end | Verze zodpovědná za spuštění kroků sestavení webu, které sestaví front-endovou aplikaci. |
Rozhraní API | Verze a modul runtime služby Azure Functions, které se používají ve webové aplikaci. |
Front-end
Můžete zadat verzi použitou k sestavení front-endu statické webové aplikace. Konfigurace jiné než výchozí verze je často nutná pouze v případě, že potřebujete cílit na starší verze.
Můžete zadat verzi modulu runtime, která sestaví front-end vaší statické webové aplikace v souboru package.json v engines
části souboru.
{
...
"engines": {
"node": ">=14.0.0"
}
}
rozhraní API
Azure Functions poskytuje základní podporu rozhraní API ve službě Azure Static Web Apps. Podrobnosti najdete v podporovaných jazycích a modulech runtime azure Functions.
Pro spravované funkce ve Static Web Apps se podporují následující verze. Pokud vaše aplikace vyžaduje verzi, která není uvedená, zvažte možnost přivést do aplikace vlastní funkce .
Pokud chcete nakonfigurovat verzi modulu runtime jazyka API, nastavte apiRuntime
vlastnost v platform
části na jednu z následujících podporovaných hodnot.
Verze modulu runtime jazyka | Operační systém | Verze Azure Functions | apiRuntime Hodnotu |
Datum ukončení podpory |
---|---|---|---|---|
.NET Core 3.1 | Windows | 3.x | dotnet:3.1 |
sobota 3. prosince 2022 |
In-process .NET 6.0 | Windows | 4.x | dotnet:6.0 |
- |
Izolované rozhraní .NET 6.0 | Windows | 4.x | dotnet-isolated:6.0 |
- |
Izolované rozhraní .NET 7.0 | Windows | 4.x | dotnet-isolated:7.0 |
- |
Izolované rozhraní .NET 8.0 | Windows | 4.x | dotnet-isolated:8.0 |
- |
Node.js 12.x | Linux | 3.x | node:12 |
sobota 3. prosince 2022 |
Node.js 14.x | Linux | 4.x | node:14 |
- |
Node.js 16.x | Linux | 4.x | node:16 |
- |
Node.js 18.x | Linux | 4.x | node:18 |
- |
Node.js 20.x (Preview) | Linux | 4.x | node:20 |
- |
Python 3.8 | Linux | 4.x | python:3.8 |
- |
Python 3.9 | Linux | 4.x | python:3.9 |
- |
Python 3.10 | Linux | 4.x | python:3.10 |
- |
.NET
Pokud chcete změnit verzi modulu runtime v aplikaci .NET, změňte TargetFramework
hodnotu v souboru csproj . Pokud v souboru staticwebapp.config.json nastavíte apiRuntime
hodnotu, ujistěte se, že hodnota odpovídá tomu, co definujete v souboru csproj.
Následující příklad ukazuje, jak aktualizovat TargetFramework
element pro NET 8.0 jako verzi modulu runtime jazyka API v souboru csproj .
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
...
</PropertyGroup>
...
Node.js
Následující příklad konfigurace ukazuje, jak pomocí apiRuntime
vlastnosti vybrat Node.js 16 jako verzi rozhraní API Language Runtime v souboru staticwebapp.config.json .
{
...
"platform": {
"apiRuntime": "node:16"
}
...
}
Python
Následující příklad konfigurace ukazuje, jak pomocí apiRuntime
vlastnosti vybrat Python 3.8 jako verzi modulu runtime jazyka API v souboru staticwebapp.config.json .
{
...
"platform": {
"apiRuntime": "python:3.8"
}
...
}
Opětovné povolení proxy serverů ve verzi 4.x
Azure Functions podporuje opětovné povolení proxy serverů ve verzi 4.x. Pokud chcete povolit podporu proxy serveru ve spravovaných funkcích pro statickou webovou aplikaci, nastavte SWA_ENABLE_PROXIES_MANAGED_FUNCTIONS
ji true
v nastavení aplikace.
[! POZNÁMKA] I když se proxy servery podporují ve verzi 4.x, zvažte použití integrace služby Azure API Management s vašimi spravovanými aplikacemi funkcí, takže vaše aplikace není závislá na proxy serverech.
Zastaralé
Poznámka:
Teď, když je Služba Azure Functions v3 vyřazená, používá Static Web Apps pro podporu modulu runtime rozhraní API pro Python 3.8 službu Azure Functions v4. Znovu nasaďte aplikaci, aby se tato změna povolila. I když se nedoporučuje, můžete se vrátit zpět na verzi 3 nastavením proměnné USEV3_FOR_PYTHON38
prostředí na true
hodnotu .
Následující moduly runtime jsou ve službě Azure Static Web Apps zastaralé. Další informace o změně modulu runtime najdete v tématu Určení verze modulu runtime jazyka API ve službě Azure Static Web Apps a migraci aplikací z Azure Functions verze 3.x na verzi 4.x.
- .NET Core 3.1
- Node.js 12.x