Obsługiwane języki i środowiska uruchomieniowe w usłudze Azure Static Web Apps
Usługa Azure Static Web Apps oferuje dwa różne miejsca, w których środowisko uruchomieniowe i wersje językowe są ważne, na frontonie i dla interfejsu API.
Typ środowiska uruchomieniowego | opis |
---|---|
Frontonu | Wersja odpowiedzialna za uruchamianie kroków kompilacji witryny internetowej, które tworzą aplikację frontonu. |
API | Wersja i środowisko uruchomieniowe usługi Azure Functions używane w aplikacji internetowej. |
Fronton
Możesz określić wersję używaną do kompilowania frontonu statycznej aplikacji internetowej. Konfigurowanie wersji innej niż domyślna jest często konieczne tylko wtedy, gdy trzeba kierować do starszych wersji.
Możesz określić wersję środowiska uruchomieniowego, która kompiluje fronton statycznej aplikacji internetowej w pliku package.json w engines
sekcji pliku .
{
...
"engines": {
"node": ">=14.0.0"
}
}
interfejs API
Podstawowa obsługa interfejsów API w usłudze Azure Static Web Apps jest zapewniana przez usługę Azure Functions. Aby uzyskać szczegółowe informacje, zapoznaj się z obsługiwanymi językami i środowiskami uruchomieniowymi usługi Azure Functions.
Następujące wersje są obsługiwane w przypadku funkcji zarządzanych w usłudze Static Web Apps. Jeśli aplikacja wymaga wersji, która nie ma na liście, rozważ przeniesienie własnych funkcji do aplikacji.
Aby skonfigurować wersję środowiska uruchomieniowego języka interfejsu API, ustaw apiRuntime
właściwość w platform
sekcji na jedną z następujących obsługiwanych wartości.
Wersja środowiska uruchomieniowego języka | System operacyjny | Wersja usługi Azure Functions | apiRuntime Wartość |
Data zakończenia pomocy technicznej |
---|---|---|---|---|
.NET Core 3.1 | Windows | 3.x | dotnet:3.1 |
sobota, 3 grudnia 2022 r. |
Proces platformy .NET 6.0 | Windows | 4.x | dotnet:6.0 |
- |
Izolowany program .NET 6.0 | Windows | 4.x | dotnet-isolated:6.0 |
- |
Izolowany program .NET 7.0 | Windows | 4.x | dotnet-isolated:7.0 |
- |
Izolowany program .NET 8.0 | Windows | 4.x | dotnet-isolated:8.0 |
- |
Node.js 12.x | Linux | 3.x | node:12 |
sobota, 3 grudnia 2022 r. |
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 (wersja zapoznawcza) | 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
Aby zmienić wersję środowiska uruchomieniowego w aplikacji .NET, zmień TargetFramework
wartość w pliku csproj . Jeśli ustawisz apiRuntime
wartość w pliku staticwebapp.config.json , upewnij się, że wartość jest zgodna z wartością zdefiniowaną w pliku csproj .
W poniższym przykładzie pokazano, jak zaktualizować TargetFramework
element dla platformy NET 8.0 jako wersję środowiska uruchomieniowego języka interfejsu API w pliku csproj .
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
...
</PropertyGroup>
...
Node.js
Poniższa przykładowa konfiguracja pokazuje, jak używać apiRuntime
właściwości do wybierania Node.js 16 jako wersji środowiska uruchomieniowego języka interfejsu API w pliku staticwebapp.config.json .
{
...
"platform": {
"apiRuntime": "node:16"
}
...
}
Python
Poniższa przykładowa konfiguracja pokazuje, jak używać apiRuntime
właściwości do wybierania języka Python 3.8 jako wersji środowiska uruchomieniowego języka interfejsu API w pliku staticwebapp.config.json .
{
...
"platform": {
"apiRuntime": "python:3.8"
}
...
}
Ponowne włączanie serwerów proxy w wersji 4.x
Usługa Azure Functions obsługuje ponowne włączanie serwerów proxy w wersji 4.x. Aby włączyć obsługę serwera proxy w funkcjach zarządzanych dla statycznej aplikacji internetowej, ustaw wartość na SWA_ENABLE_PROXIES_MANAGED_FUNCTIONS
true
w ustawieniach aplikacji.
[! UWAGA] Chociaż serwery proxy są obsługiwane w wersji 4.x, rozważ użycie integracji usługi Azure API Management z aplikacjami funkcji zarządzanych, więc aplikacja nie jest zależna od serwerów proxy.
Przestarzałe elementy
Uwaga
Teraz, gdy usługa Azure Functions w wersji 3 została wycofana, usługa Static Web Apps używa usługi Azure Functions w wersji 4 na potrzeby obsługi środowiska uruchomieniowego interfejsu API dla języka Python 3.8. Ponownie wdróż aplikację, aby włączyć tę zmianę. Mimo że nie jest to zalecane, można przywrócić do wersji 3, ustawiając zmienną środowiskową USEV3_FOR_PYTHON38
na true
wartość .
Następujące środowiska uruchomieniowe są przestarzałe w usłudze Azure Static Web Apps. Aby uzyskać więcej informacji na temat zmiany środowiska uruchomieniowego, zobacz Określanie wersji środowiska uruchomieniowego języka interfejsu API w usłudze Azure Static Web Apps i Migrowanie aplikacji z usługi Azure Functions w wersji 3.x do wersji 4.x.
- .NET Core 3.1
- Node.js 12.x