Ondersteunde talen en runtimes in Azure Static Web Apps
Azure Static Web Apps heeft twee verschillende locaties waar runtime- en taalversies belangrijk zijn, aan de front-end en voor de API.
Runtimetype | Beschrijving |
---|---|
Front-end | De versie die verantwoordelijk is voor het uitvoeren van de buildstappen van de website die de front-endtoepassing bouwen. |
API | De versie en runtime van Azure Functions die in uw webtoepassing worden gebruikt. |
Front-end
U kunt de versie opgeven die wordt gebruikt om de front-end van uw statische web-app te bouwen. Het configureren van een niet-standaardversie is vaak alleen nodig als u oudere versies wilt instellen.
U kunt de runtimeversie opgeven waarmee de front-end van uw statische web-app wordt gebouwd in het package.json-bestand in de engines
sectie van het bestand.
{
...
"engines": {
"node": ">=14.0.0"
}
}
API
De onderliggende ondersteuning voor API's in Azure Static Web Apps wordt geleverd door Azure Functions. Raadpleeg de ondersteunde talen en runtimes van Azure Functions voor meer informatie.
De volgende versies worden ondersteund voor beheerde functies in Static Web Apps. Als uw toepassing een versie vereist die niet wordt vermeld, kunt u overwegen om uw eigen functies naar uw app te brengen.
Als u de runtimeversie van de API-taal wilt configureren, stelt u de apiRuntime
eigenschap in de platform
sectie in op een van de volgende ondersteunde waarden.
Versie van taalruntime | Besturingssysteem | Azure Functions-versie | apiRuntime Waarde |
Einddatum van ondersteuning |
---|---|---|---|---|
.NET Core 3.1 | Windows | 3.x | dotnet:3.1 |
zaterdag 3 december 2022 |
.NET 6.0 in-process | Windows | 4.x | dotnet:6.0 |
- |
.NET 6.0 geïsoleerd | Windows | 4.x | dotnet-isolated:6.0 |
- |
.NET 7.0 geïsoleerd | Windows | 4.x | dotnet-isolated:7.0 |
- |
.NET 8.0 geïsoleerd | Windows | 4.x | dotnet-isolated:8.0 |
- |
Node.js 12.x | Linux | 3.x | node:12 |
zaterdag 3 december 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
Als u de runtimeversie in een .NET-app wilt wijzigen, wijzigt u de TargetFramework
waarde in het csproj-bestand . Als u een apiRuntime
waarde instelt in het bestand staticwebapp.config.json , controleert u of de waarde overeenkomt met wat u in het csproj-bestand definieert.
In het volgende voorbeeld ziet u hoe u het TargetFramework
element voor NET 8.0 bijwerkt als de runtimeversie van de API-taal in het csproj-bestand .
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
...
</PropertyGroup>
...
Node.js
In de volgende voorbeeldconfiguratie ziet u hoe u de apiRuntime
eigenschap gebruikt om Node.js 16 te selecteren als de runtimeversie van de API-taal in het staticwebapp.config.json-bestand .
{
...
"platform": {
"apiRuntime": "node:16"
}
...
}
Python
In de volgende voorbeeldconfiguratie ziet u hoe u de apiRuntime
eigenschap gebruikt om Python 3.8 te selecteren als de runtimeversie van de API-taal in het staticwebapp.config.json-bestand .
{
...
"platform": {
"apiRuntime": "python:3.8"
}
...
}
Proxy's opnieuw inschakelen in v4.x
Azure Functions biedt ondersteuning voor het opnieuw inschakelen van proxy's in v4.x. Als u proxyondersteuning wilt inschakelen in beheerde functies voor uw statische web-app, stelt u deze in SWA_ENABLE_PROXIES_MANAGED_FUNCTIONS
true
op in de toepassingsinstellingen.
[! OPMERKING] Hoewel proxy's worden ondersteund in v4.x, kunt u overwegen om Azure API Management-integratie te gebruiken met uw beheerde functie-apps, zodat uw app niet afhankelijk is van proxy's.
Afgeschafte onderdelen
Notitie
Nu Azure Functions v3 buiten gebruik is gesteld, maakt Static Web Apps gebruik van Azure Functions v4 voor API-runtime-ondersteuning voor Python 3.8. Implementeer uw app opnieuw om deze wijziging in te schakelen. Hoewel dit niet wordt aanbevolen, kunt u teruggaan naar v3 door de omgevingsvariabele USEV3_FOR_PYTHON38
in te stellen op true
.
De volgende runtimes zijn afgeschaft in Azure Static Web Apps. Zie De runtimeversie van api-taal opgeven in Azure Static Web Apps en apps migreren van Azure Functions versie 3.x naar versie 4.x voor meer informatie over het wijzigen van uw runtime.
- .NET Core 3.1
- Node.js 12.x