Suporte de API em Aplicativos Web Estáticos do Azure com o Serviço de Aplicativo do Azure
O Serviço de Aplicativo do Azure é uma plataforma gerenciada para hospedar aplicativos Web que executam código em servidores. O Serviço de Aplicativo do Azure dá suporte a muitos tempos de execução e estruturas, incluindo Node.js, ASP.NET Core, PHP, Java e Python.
Quando você vincula seu aplicativo Web do Serviço de Aplicativo do Azure ao seu aplicativo Web estático, todas as solicitações para seu aplicativo Web estático com uma rota que começa com /api
são intermediadas por proxy para a mesma rota no aplicativo do Serviço de Aplicativo do Azure.
Por padrão, quando um aplicativo do Serviço de Aplicativo é vinculado a um aplicativo Web estático, o aplicativo do Serviço de Aplicativo só aceita solicitações que são intermediadas por proxy por meio do aplicativo Web estático vinculado. Um aplicativo do Serviço de Aplicativo do Azure só pode ser vinculado a um único aplicativo Web estático de cada vez.
Todos os planos de hospedagem do Serviço de Aplicativo do Azure estão disponíveis para uso com os Aplicativos Web Estáticos do Azure.
As opções de API para Aplicativos Web Estáticos incluem os seguintes serviços do Azure:
- Funções do Azure
- Gestão de API do Azure
- Serviço de Aplicações do Azure
- Aplicativos de contêiner do Azure
Consulte a visão geral das APIs para obter mais informações.
Nota
A integração com o Serviço de Aplicativo do Azure requer o plano Static Web Apps Standard.
A integração de back-end não é suportada em ambientes de solicitação pull de aplicativos Web estáticos.
Pré-requisitos
Para vincular um Serviço de Aplicativo ao seu aplicativo Web estático, você precisa ter um recurso do Serviço de Aplicativo existente e um aplicativo Web estático.
Recurso | Descrição |
---|---|
Serviço de Aplicações do Azure | Se você ainda não tiver um, siga as etapas no guia Criar um aplicativo Web no Azure . |
Aplicação Web estática existente | Se você ainda não tiver um, siga as etapas no guia de introdução para criar um aplicativo Web estático No Framework . |
Exemplo
Considere uma instância existente do Serviço de Aplicativo do Azure que exponha um ponto de extremidade por meio do seguinte local.
https://my-web-app.azurewebsites.net/api/getProducts
Uma vez vinculado, você pode acessar esse mesmo ponto de extremidade através do caminho do api
seu aplicativo Web estático, conforme mostrado neste URL de exemplo.
https://red-sea-123.azurestaticapps.net/api/getProducts
Ambos os URLs apontam para o mesmo ponto de extremidade da API. O ponto de extremidade no Serviço de Aplicativo deve ter o prefixo, já que os Aplicativos Web estáticos correspondem às solicitações feitas e /api
fazem proxy de todo o caminho para o /api
recurso vinculado.
Vincular um Aplicativo Web do Serviço de Aplicativo do Azure
Para vincular um aplicativo Web como back-end de API para um aplicativo Web estático, siga estas etapas:
No portal do Azure, vá para o aplicativo Web estático.
Selecione APIs no menu de navegação.
Localize o ambiente ao qual você deseja vincular a instância de Gerenciamento de API. Selecionar Ligação.
Em Tipo de recurso de back-end, selecione Aplicativo Web.
Em Assinatura, selecione a assinatura que contém o aplicativo do Serviço de Aplicativo do Azure que você deseja vincular.
Em Nome do recurso, selecione o aplicativo do Serviço de Aplicativo do Azure.
Selecionar Ligação.
Quando o processo de vinculação é concluído, as solicitações para rotas que começam com /api
são intermediadas por proxy para o aplicativo do Serviço de Aplicativo vinculado.
Gerenciar o acesso ao Serviço de Aplicativo do Azure
Seu aplicativo do Serviço de Aplicativo é configurado com um provedor de identidade chamado Azure Static Web Apps (Linked)
que permite apenas o tráfego que é intermediado por proxy por meio do aplicativo Web estático. Para tornar seu aplicativo do Serviço de Aplicativo acessível a outros aplicativos, atualize sua configuração de autenticação para adicionar outro provedor de identidade ou altere as configurações de segurança para permitir acesso não autenticado.
Desvincular um aplicativo do Serviço de Aplicativo do Azure
Desvincular o Serviço de Aplicativo de Aplicativos Web Estáticos
Para desvincular um aplicativo Web de um aplicativo Web estático, siga estas etapas:
No portal do Azure, vá para o aplicativo Web estático.
Selecione APIs no menu de navegação.
Localize o ambiente que você deseja desvincular e selecione o nome do aplicativo Web.
Selecione Desvincular.
Quando o processo de desvinculação estiver concluído, as solicitações para rotas que começam com /api
não serão mais intermediadas por proxy para seu aplicativo do Serviço de Aplicativo.
Nota
Para evitar a exposição acidental do aplicativo do Serviço de Aplicativo ao tráfego anônimo, o provedor de identidade criado pelo processo de vinculação não é excluído automaticamente. Você pode excluir o provedor de identidade chamado Aplicativos Web Estáticos do Azure (Vinculado) das configurações de autenticação do aplicativo do Serviço de Aplicativo.
Remover autenticação do recurso Serviço de Aplicativo
Para permitir que seu recurso do Serviço de Aplicativo receba tráfego anônimo, siga estas etapas para remover o provedor de identidade:
No portal do Azure, navegue até o recurso Serviço de Aplicativo.
Selecione Autenticação no menu de navegação.
Na lista de provedores de identidade, exclua o provedor de identidade relacionado ao recurso Static Web Apps.
Selecione Remover autenticação para remover a autenticação e permitir tráfego anônimo para o recurso do Serviço de Aplicativo.
Seu recurso do Serviço de Aplicativo agora pode receber tráfego anônimo.