Compartilhar via


Idiomas e runtimes com suporte nos Aplicativos Web Estáticos do Azure

Os Aplicativos Web Estáticos do Azure apresentam dois locais diferentes em que o runtime e as versões de idioma são importantes, no front-end e na API.

Tipo de runtime Descrição
Front-end A versão responsável por executar as etapas de build do site que criam o aplicativo front-end.
API A versão e o runtime do Azure Functions usados em seu aplicativo Web.

Front-end

Você pode especificar a versão usada para criar o front-end do seu aplicativo Web estático. A configuração de uma versão não padrão geralmente só é necessária se você precisar direcionar versões mais antigas.

Você pode especificar a versão de runtime que cria o front-end do aplicativo Web estático no arquivo package.json na engines seção do arquivo.

{
  ...
  "engines": {
   "node": ">=14.0.0"
  }
}

API (Interface de Programação de Aplicativos)

O suporte subjacente para APIs nos Aplicativos Web Estáticos do Azure é fornecido pelo Azure Functions. Consulte os idiomas e runtimes compatíveis com o Azure Functions para obter detalhes.

As versões a seguir têm suporte para funções gerenciadas em Aplicativos Web Estáticos. Se seu aplicativo exigir uma versão não listada, considere trazer suas próprias funções para seu aplicativo.

Para configurar a versão de runtime da linguagem de API, defina a propriedade apiRuntime na seção platform como um dos valores com suporte a seguir.

Versão de runtime da linguagem Sistema Operacional Versão do Azure Functions Valor apiRuntime Data de fim do suporte
.NET Core 3.1 Windows 3.x dotnet:3.1 3 de dezembro de 2022
.NET 6.0 em processo Windows 4.x dotnet:6.0 30 de abril de 2025
.NET 8.0 em processo Windows 4.x dotnet:8.0 -
.NET 6.0 isolado Windows 4.x dotnet-isolated:6.0 30 de abril de 2025
.NET 7.0 isolado Windows 4.x dotnet-isolated:7.0 30 de abril de 2025
.NET 8.0 isolado Windows 4.x dotnet-isolated:8.0 -
.NET 9.0 isolado Windows 4.x dotnet-isolated:9.0 -
Node.js 12.x Linux 3.x node:12 3 de dezembro de 2022
Node.js 14.x Linux 4.x node:14 30 de abril de 2025
Node.js 16.x Linux 4.x node:16 30 de abril de 2025
Node.js 18.x Linux 4.x node:18 31 de maio de 2025
Node.js 20.x Linux 4.x node:20 -
Python 3.8 Linux 4.x python:3.8 30 de abril de 2025
Python 3.9 Linux 4.x python:3.9 -
Python 3.10 Linux 4.x python:3.10 -
Python 3.11 Linux 4.x python:3.11 -

.NET

Para alterar a versão do runtime em um aplicativo .NET, altere o valor de TargetFramework no arquivo csproj. Embora isso seja opcional, se você definir um valor de apiRuntime no arquivo staticwebapp.config.json, verifique se o valor corresponde ao que definido no arquivo csproj.

O exemplo a seguir demonstra como atualizar o elemento TargetFramework para o NET 8.0 como a versão de runtime da linguagem da API no arquivo csproj.

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFramework>net8.0</TargetFramework>
    ...
  </PropertyGroup>
...

Node.js

A configuração de exemplo a seguir demonstra como usar a apiRuntime propriedade para selecionar Node.js 20 como a versão de runtime do idioma da API no arquivo staticwebapp.config.json .

{
  ...
  "platform": {
    "apiRuntime": "node:20"
  }
  ...
}

Python

A configuração de exemplo a seguir demonstra como usar a propriedade para selecionar o apiRuntime Python 3.11 como a versão de runtime da linguagem de API no arquivo staticwebapp.config.json .

{
  ...
  "platform": {
    "apiRuntime": "python:3.11"
  }
  ...
}

Habilitar novamente proxies no v4.x

O Azure Functions dá suporte à reabilitação de proxies na v4.x. Para habilitar o suporte de proxy em funções gerenciadas para o seu aplicativo web estático, defina SWA_ENABLE_PROXIES_MANAGED_FUNCTIONS como true em suas configurações de aplicativo.

Observação

Embora os proxies sejam compatíveis com v4.x, considere usar a integração do Gerenciamento de API do Azure com seus aplicativos de funções gerenciadas, portanto, seu aplicativo não depende de proxies.

Desativações

Observação

Agora que o Azure Functions v3 está desativado, os Aplicativos Web Estáticos usam o Azure Functions v4 para suporte de runtime de API para Python 3.8. Reimplante seu aplicativo para habilitar essa alteração. Embora não seja recomendado, você pode reverter para v3 definindo a variável USEV3_FOR_PYTHON38 de ambiente como true.

Os seguintes runtimes estão obsoletos no Azure Static Web Apps. Para obter mais informações sobre como alterar o runtime, consulte Especifique a versão de runtime do idioma da API nos Aplicativos Web Estáticos do Azure e migre aplicativos do Azure Functions versão 3.x para a versão 4.x.

  • .NET Core 3.1
  • Node.js 12.x