Suporte de API nos Aplicativos Web Estáticos do Azure com Azure Functions
Os aplicativos Web de front-end geralmente chamam APIs finais de retorno de chamada para dados e serviços. Por padrão, os Aplicativos Web Estáticos do Azure fornecem pontos de extremidade de API sem servidor internos via Azure Functions.
As APIs do Azure Functions nos Aplicativos Web Estáticos estão disponíveis em duas configurações possíveis, dependendo do plano de hospedagem:
Funções gerenciadas: por padrão, a API de um aplicativo Web estático é um aplicativo do Azure Functions gerenciado e implantado por Aplicativos Web Estáticos do Azure associados a algumas restrições.
Traga suas próprias funções: opcionalmente, é possível fornecer um aplicativo do Azure Functions existente de qualquer tipo de plano, que inclui todos os recursos do Azure Functions. Com essa configuração, você é responsável por lidar com uma implantação separada para o Aplicativo de funções.
A tabela a seguir contrasta as diferenças entre o uso de funções gerenciadas e existentes.
Recurso | Funções Gerenciadas | Traga suas próprias Funções |
---|---|---|
Acesso a gatilhos e associações do Azure Functions | Somente HTTP | Tudo |
Runtimes do Azure Functions compatíveis1 | Confira Linguagens e runtimes com suporte. | Tudo |
Planos de hospedagem do Azure Functions com suporte | Consumo | Consumo Premium Dedicado |
Segurança integrada com acesso direto aos dados de autenticação e autorização baseada em função do usuário | ✔ | ✔ |
Integração de roteamento, que torna a rota de /api disponível para o aplicativo Web com segurança, sem a necessidade de regras CORS personalizadas. |
✔ | ✔ |
Modelo de programação de Durable Functions | ✕ | ✔ |
Identidade gerenciada | ✕ | ✔ |
Gerenciamento de token de Autenticação e Autorização do Serviço de Aplicativo do Azure | ✕ | ✔ |
Funções de API disponíveis fora dos Aplicativos Web Estáticos do Azure | ✕ | ✔ |
Referências do Key Vault | ✕ | ✔ |
1 Para especificar a versão de runtime em funções gerenciadas, adicione um arquivo de configuração ao aplicativo de front-end e defina a propriedade apiRuntime
. O suporte está sujeito à política de suporte de runtime de linguagem do Azure Functions.
As opções de API para Aplicativos Web Estáticos incluem os seguintes serviços do Azure:
- Azure Functions
- Gerenciamento de API do Azure
- Serviço de Aplicativo do Azure
- Aplicativos de Contêiner do Azure
Confira a Visão geral das APIs para obter mais informações.
Configuração
Os pontos de extremidade de API estão disponíveis para o aplicativo Web por meio da rota de api
.
Funções gerenciadas | Traga suas próprias funções |
---|---|
Embora a rota de /api seja fixa, você tem controle sobre o local da pasta de código-fonte do aplicativo de funções gerenciadas. Você pode alterar esse local editando o arquivo YAML do fluxo de trabalho localizado na pasta .github/workflows do repositório. |
As solicitações à rota de /api são enviadas ao aplicativo do Azure Functions existente. |
Solução de problemas e logs
Os logs só estarão disponíveis se você adicionar Application Insights.
Funções gerenciadas | Traga suas próprias funções |
---|---|
Ative o registro em log habilitando o Application Insights em seu aplicativo Web estático. | Ative o registro em log habilitando o Application Insights em seu aplicativo do Azure Functions. |
Restrições
Além das restrições da API dos Aplicativos Web Estáticos, as seguintes restrições também são aplicáveis às APIs do Azure Functions:
Funções gerenciadas | Traga suas próprias funções |
---|---|
|
|