Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Neste Guia de início rápido, você usa o Visual Studio Code para criar um aplicativo que responde a alterações em uma tabela do Banco de dados SQL do Azure. Depois de testar o código localmente, implante-o em um novo aplicativo de função sem servidor em execução em um plano de Consumo Flex no Azure Functions.
A origem do projeto usa a extensão Azure Developer CLI (azd) com o Visual Studio Code para simplificar a inicialização e verificação do código do projeto localmente e a implantação do código no Azure. Essa implantação segue as práticas recomendadas atuais para implantações seguras e escaláveis do Azure Functions.
Importante
Embora responder a alterações numa base de dados Azure SQL seja suportado para todas as linguagens, este cenário de início rápido atualmente só tem exemplos para C#, Python e TypeScript. Para completar este quickstart, selecione uma destas línguas suportadas no topo do artigo.
Pré-requisitos
Uma conta do Azure com uma assinatura ativa. Crie uma conta gratuitamente.
Visual Studio Code em uma das plataformas suportadas.
A extensão do Azure Functions para Visual Studio Code. Esta extensão requer as Ferramentas Principais do Azure Functions. Quando essa ferramenta não está disponível localmente, a extensão tenta instalá-la usando um instalador baseado em pacote. Você também pode instalar ou atualizar o pacote Core Tools executando
Azure Functions: Install or Update Azure Functions Core Toolsa partir da paleta de comandos. Se você não tiver o npm ou o Homebrew instalado em seu computador local, deverá instalar ou atualizar manualmente as Ferramentas Principais.
Extensão C# para Visual Studio Code.
-
Node.js 18.x ou superior. Use o
node --versioncomando para verificar sua versão.
Versões Python suportadas pelo Azure Functions. Para obter mais informações, consulte Como instalar o Python.
A extensão Python para Visual Studio Code.
- A extensão da CLI do Desenvolvedor do Azure para Visual Studio Code.
- A extensão do SQL Server (mssql) para Visual Studio Code.
Inicializar o projeto
Você pode usar o azd init comando da paleta de comandos para criar um projeto de código local do Azure Functions a partir de um modelo.
No Visual Studio Code, abra uma pasta ou espaço de trabalho no qual você deseja criar seu projeto.
Prima F1 para abrir a paleta de comandos, procure e execute o comando
Azure Developer CLI (azd): Initialize App (init)e, em seguida, selecione Selecionar um modelo.Quando solicitado, procure e selecione
Azure Functions with SQL Triggers and Bindings.Quando solicitado, insira um nome de ambiente exclusivo, como
sqldbchanges.
Este comando extrai os arquivos de projeto do repositório de modelos e inicializa o projeto na pasta ou espaço de trabalho atual. No azd, o ambiente é usado para manter um contexto de implantação exclusivo para seu aplicativo, e você pode definir mais de um. Também faz parte do nome do grupo de recursos que você cria no Azure.
Este comando extrai os arquivos de projeto do repositório de modelos e inicializa o projeto na pasta ou espaço de trabalho atual. No azd, o ambiente é usado para manter um contexto de implantação exclusivo para seu aplicativo, e você pode definir mais de um. Também faz parte do nome do grupo de recursos que você cria no Azure.
Este comando extrai os arquivos de projeto do repositório de modelos e inicializa o projeto na pasta ou espaço de trabalho atual. No azd, o ambiente é usado para manter um contexto de implantação exclusivo para seu aplicativo, e você pode definir mais de um. Também faz parte do nome do grupo de recursos que você cria no Azure.
Antes de executar seu aplicativo localmente, você deve criar os recursos no Azure.
Criar recursos do Azure
Este projeto está configurado para usar o azd provision comando para criar um aplicativo de função em um plano Flex Consumption, juntamente com outros recursos necessários do Azure que seguem as práticas recomendadas atuais.
No Visual Studio Code, pressione F1 para abrir a paleta de comandos, procure e execute o comando
Azure Developer CLI (azd): Sign In with Azure Developer CLIe entre usando sua conta do Azure.Pressione F1 para abrir a paleta de comandos, procurar e executar o comando
Azure Developer CLI (azd): Provision Azure resources (provision)para criar os recursos necessários do Azure.Quando solicitado na janela Terminal, forneça estes parâmetros de implantação necessários:
Pronta Description Selecione uma Assinatura do Azure para usar Selecione a subscrição na qual pretende que os seus recursos sejam criados. parâmetro de implantação da localização Região do Azure na qual criar o grupo de recursos que contém os novos recursos do Azure. Apenas as regiões que atualmente suportam o plano Flex Consumption são mostradas. Parâmetro de implantação vnetEnabled Embora o modelo ofereça suporte à criação de recursos dentro de uma rede virtual, para simplificar a implantação e o teste, escolha False.
O azd provision comando usa sua resposta a esses prompts com os arquivos de configuração do Bicep para criar e configurar esses recursos necessários do Azure, seguindo as práticas recomendadas mais recentes:
- Plano Flex Consumption e aplicação funcional
- Banco de Dados SQL do Azure (nome padrão: ToDo)
- Armazenamento do Azure (obrigatório) e Application Insights (recomendado)
- Políticas e funções de acesso para a sua conta
- Conexões de serviço a serviço usando identidades gerenciadas (em vez de cadeias de conexão armazenadas)
Os ganchos pós-provisionamento também geram o arquivo local.settings.json , que é necessário para ser executado localmente. Esse arquivo contém as configurações necessárias para se conectar ao seu banco de dados no Azure.
Rever o código (opcional)
O exemplo define duas funções:
| Nome da função | Arquivo de código | Tipo de acionador | Description |
|---|---|---|---|
httptrigger-sql-output |
sql_output_http_trigger.cs | Acionador HTTP | Aceita uma carga JSON formatada corretamente e usa a associação de saída SQL para inserir o objeto como uma linha na ToDo tabela. |
ToDoTrigger |
sql_trigger.cs | Trigger SQL | Escuta alterações na tabela ao nível de linha e retorna um objeto que representa a linha alterada. |
O ToDoItem tipo é definido em ToDoItem.cs.
| Nome da função | Arquivo de código | Tipo de acionador | Description |
|---|---|---|---|
http_trigger_sql_output |
function_app.py | Acionador HTTP | Aceita uma carga JSON formatada corretamente e usa a associação de saída SQL para inserir o objeto como uma linha na ToDo tabela. |
httptrigger-sql-output |
sql_trigger_todo | Trigger SQL | Escuta alterações na tabela ao nível de linha e retorna um objeto que representa a linha alterada. |
O ToDoItem tipo é definido em todo_item.py.
| Nome da função | Arquivo de código | Tipo de acionador | Description |
|---|---|---|---|
httpTriggerSqlOutput |
sql_output_http_trigger.ts | Acionador HTTP | Aceita uma carga JSON formatada corretamente e usa a associação de saída SQL para inserir o objeto como uma linha na ToDo tabela. |
sqlTriggerToDo |
sql_trigger.ts | Trigger SQL | Escuta alterações na tabela ao nível de linha e retorna um objeto que representa a linha alterada. |
O ToDoItem tipo é definido em ToDoItem.ts.
Ambas as funções usam as variáveis de ambiente no nível AZURE_SQL_CONNECTION_STRING_KEY_* do aplicativo que definem uma conexão baseada em identidade com a instância do Banco de Dados SQL do Azure usando a autenticação de ID do Microsoft Entra. Essas variáveis de ambiente são criadas para você no Azure (configurações de aplicativo de função) e localmente (local.settings.json) durante a azd provision operação.
Conectar-se ao banco de dados SQL
Você pode usar a extensão SQL Server (mssql) para Visual Studio Code para se conectar ao novo banco de dados. Esta extensão ToDo ajuda-o a fazer atualizações na tabela para executar a função trigger SQL.
Pressione F1 e, na paleta de comandos, procure e execute o comando
MS SQL: Add Connection.Na caixa de diálogo Conexão, altere Tipo de entrada para Procurar no Azure e defina estas opções restantes:
Opção Selecione Description Server Sua instância do SQL Server Por padrão, todos os servidores acessíveis à sua conta do Azure são exibidos. Utilize Assinatura, Grupo de recursos e Localização para ajudar a filtrar a lista de servidores. Base de dados ToDoO banco de dados criado durante o processo de provisionamento. Tipo de autenticação Microsoft Entra ID Se ainda não tiver sessão iniciada, selecione Iniciar sessão e inicie sessão na sua conta do Azure. ID do Inquilino O inquilino específico da conta. Se a sua conta tiver mais do que um inquilino, escolha o inquilino correto para a sua subscrição. Selecione Conectar para conectar-se ao seu banco de dados. A conexão usa sua conta de usuário local, que recebe permissões de administrador no servidor de hospedagem e é mapeada no
dbobanco de dados.No modo de exibição do SQL Server , localize e expanda Conexões e, em seguida, seu novo servidor no SQL Server Explorer. Expanda Tabelas e verifique se a
ToDotabela existe. Se ele não existir, talvez seja necessário executarazd provisionnovamente e verificar se há erros.
Executar a função localmente
O Visual Studio Code integra-se com as ferramentas principais do Azure Functions para permitir que você execute este projeto em seu computador de desenvolvimento local antes de publicar em seu novo aplicativo de função no Azure.
Pressione F1 e, na paleta de comandos, procure e execute o comando
Azurite: Start.Para iniciar a função localmente, pressione F5 ou o ícone Executar e Depurar na barra de atividades do lado esquerdo.
O painel Terminal exibe a saída das Ferramentas Principais. Seu aplicativo é iniciado no painel Terminal e você pode ver o nome da função que está sendo executada localmente.
Com o aplicativo em execução, você pode verificar e depurar ambos os gatilhos de função.
Para verificar a função de gatilho HTTP que grava em uma ligação de saída SQL:
Copie este objeto JSON, que você também pode encontrar no arquivo de
test.httpprojeto:{ "id": "11111111-1111-1111-1111-111111111111", "order": 1, "title": "Test Todo Item", "url": "https://example.com", "completed": false }Esses dados representam uma linha que tu inseres no teu banco de dados SQL quando chamas o endpoint HTTP. A vinculação de saída traduz o objeto de dados em uma operação
INSERTno banco de dados.Com a aplicação em execução, no modo de exibição do Azure, em Espaço de trabalho, expanda Projeto local>Funções.
Selecione com o botão direito do mouse sua função HTTP (ou Ctrl+clique no macOS), selecione Executar função agora, cole os dados JSON copiados e pressione Enter.
A função manipula a solicitação HTTP e grava o item no banco de dados SQL conectado e retorna o objeto criado.
De volta ao explorador do SQL Server, selecione com o botão direito do rato a
ToDotabela (ou Ctrl+clique no macOS) e selecione Selecionar Top 1000. Quando a consulta é executada, ela retorna a linha inserida ou atualizada.Repita a etapa 3 e reenvie o mesmo objeto de dados com a mesma ID. Desta vez, a ligação de saída executa uma
UPDATEoperação em vez de umaINSERTe modifica a linha existente no banco de dados.
Quando terminar, digite Ctrl+C no terminal para interromper o processo das Ferramentas Principais.
Publicar no Azure
Você pode executar o azd deploy comando do Visual Studio Code para implantar o código do projeto em seus recursos já provisionados no Azure.
Pressione F1 para abrir a paleta de comandos, procurar e executar o comando
Azure Developer CLI (azd): Deploy to Azure (deploy).O
azd deploycomando empacota e implanta seu código no contêiner de implantação. O aplicativo é então iniciado e executado no pacote implantado.Depois que o comando for concluído com êxito, seu aplicativo será executado no Azure. Anote o valor
Endpoint, que é a URL da sua app de funções que está a executar no Azure.
Invoque a função no Azure
No Visual Studio Code, pressione F1 e, na paleta de comandos, procure e execute o comando
Azure: Open in portal, selecioneFunction appe escolha seu novo aplicativo. Entre com sua conta do Azure, se necessário.Selecione Fluxo de log no painel esquerdo, que se conecta aos logs do Application Insights para seu aplicativo.
Retorne ao Visual Studio Code para executar ambas as funções no Azure.
Pressione F1 para abrir a paleta de comandos, procurar e executar o comando
Azure Functions: Execute Function Now....Procure e selecione seu aplicativo de função remota na lista e, em seguida, selecione a função de gatilho HTTP.
Como antes, cole os dados do objeto JSON em Enter payload body e pressione Enter.
{ "id": "11111111-1111-1111-1111-111111111111", "order": 1, "title": "Test Todo Item", "url": "https://example.com", "completed": false }Para executar um
INSERTem vez de umUPDATE, substitua oidpor um novo valor GUID.Retorne ao portal e visualize a saída de execução na janela de log.
Limpeza de recursos
Quando terminar de trabalhar com seu aplicativo de função e recursos relacionados, você poderá usar este comando para excluir o aplicativo de função e seus recursos relacionados do Azure e evitar incorrer em custos adicionais:
azd down --no-prompt
Observação
A --no-prompt opção instrui azd a excluir seu grupo de recursos sem uma confirmação sua.
Este comando não afeta seu projeto de código local.