Udostępnij za pośrednictwem


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 truewartość .

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