Criar sua primeira função usando o Visual Studio CodeCreate your first function using Visual Studio Code

O Azure Functions lhe permite executar seu código em um ambiente sem servidor sem que seja preciso primeiro criar uma VM ou publicar um aplicativo Web.Azure Functions lets you execute your code in a serverless environment without having to first create a VM or publish a web application.

Neste artigo, você aprenderá a usar a extensão Azure Functions para Visual Studio Code para criar e testar uma função "hello world" no computador local usando o Microsoft Visual Studio Code.In this article, you learn how to use the Azure Functions extension for Visual Studio Code to create and test a "hello world" function on your local computer using Microsoft Visual Studio Code. Em seguida, você publicará o código de função no Azure do Visual Studio Code.You then publish the function code to Azure from Visual Studio Code.

Código do Azure Functions em um projeto do Visual Studio

A extensão atualmente dá suporte a funções C#, JavaScript, Java e Python.The extension currently supports C#, JavaScript, Java, and Python functions. As etapas neste artigo e no artigo seguinte são compatíveis somente com as funções JavaScript e C#.The steps in this article and the article that follows support only JavaScript and C# functions. Para saber como usar o Visual Studio Code para criar e publicar funções Python, confira Criar e implantar Azure Functions sem servidor em Python com o Visual Studio Code.To learn how to use Visual Studio Code to create and publish Python functions, see Create and deploy serverless Azure Functions in Python with Visual Studio Code. Para saber como usar o Visual Studio Code para criar e publicar funções do PowerShell, veja Criar sua primeira função do PowerShell no Azure.To learn how to use Visual Studio Code to create and publish PowerShell functions, see Create your first PowerShell function in Azure.

Atualmente, a extensão está em versão prévia.The extension is currently in preview. Para obter mais informações, consulte a página da extensão Extensão Azure Functions para Visual Studio Code.To learn more, see the Azure Functions extension for Visual Studio Code extension page.

Pré-requisitosPrerequisites

Para concluir este guia de início rápido:To complete this quickstart:

Se você não tiver uma assinatura do Azure, crie uma conta gratuita antes de começar.If you don't have an Azure subscription, create a free account before you begin.

Instalar a extensão do Azure FunctionsInstall the Azure Functions extension

É possível usar a extensão do Azure Functions para criar e testar funções e implantá-las no Azure.You can use the Azure Functions extension to create and test functions and deploy them to Azure.

  1. No Visual Studio Code, abra Extensões e pesquise azure functions ou selecione este link no Visual Studio Code.In Visual Studio Code, open Extensions and search for azure functions, or select this link in Visual Studio Code.

  2. Selecione Instalar para instalar a extensão do Visual Studio Code:Select Install to install the extension for Visual Studio Code:

    Instalar a extensão para o Azure Functions

  3. Reinicie o Visual Studio Code e selecione o ícone do Azure na barra Atividade.Restart Visual Studio Code and select the Azure icon on the Activity bar. Você deve ver uma área do Azure Functions na barra lateral.You should see an Azure Functions area in the Side Bar.

    Área do Azure Functions na barra lateral

Criar seu projeto do Functions com uma funçãoCreate your Functions project with a function

O modelo de projeto do Azure Functions no Visual Studio Code cria um projeto que pode ser publicado em um aplicativo de funções no Azure.The Azure Functions project template in Visual Studio Code creates a project that can be published to a function app in Azure. Um aplicativo de funções permite a você agrupar funções como uma unidade lógica para o gerenciamento, implantação e compartilhamento de recursos.A function app lets you group functions as a logical unit for management, deployment, and sharing of resources.

  1. No Visual Studio Code, pressione F1 para abrir a paleta de comandos.In Visual Studio Code, press F1 to open the command palette. Na paleta de comandos, pesquise e selecione Azure Functions: Create new project....In the command palette, search for and select Azure Functions: Create new project....

  2. Escolha um local de diretório para o workspace do projeto e escolha Selecionar.Choose a directory location for your project workspace and choose Select.

    Observação

    Estas etapas foram projetadas para serem concluídas fora de um workspace.These steps were designed to be completed outside of a workspace. Nesse caso, não selecione uma pasta de projeto que faz parte de um workspace.In this case, do not select a project folder that is part of a workspace.

  3. Após os prompts, forneça as seguintes informações:Following the prompts, provide the following information:

    PromptPrompt ValorValue DESCRIÇÃODescription
    Selecione uma linguagem de programação para o seu projeto de aplicativo de função.Select a language for your function app project C# ou JavaScriptC# or JavaScript Este artigo é compatível com C# e JavaScript.This article supports C# and JavaScript. Para Python, consulte neste artigo do Python e para PowerShell, consulte este artigo do PowerShell.For Python, see this Python article, and for PowerShell, see this PowerShell article.
    Selecione um modelo para a primeira função do projetoSelect a template for your project's first function Gatilho HTTPHTTP trigger Crie uma função disparada por HTTP no novo aplicativo de funções.Create an HTTP triggered function in the new function app.
    Forneça um nome de funçãoProvide a function name HttpTriggerHttpTrigger Pressione Enter para usar o nome padrão.Press Enter to use the default name.
    Forneça um namespaceProvide a namespace My.FunctionsMy.Functions (Somente C#) As bibliotecas de classe C# devem ter um namespace.(C# only) C# class libraries must have a namespace.
    Nível de autorizaçãoAuthorization level FunçãoFunction Requer uma tecla de função para chamar o ponto de extremidade HTTP da função.Requires a function key to call the function's HTTP endpoint.
    Selecione como você gostaria de abrir seu projetoSelect how you would like to open your project Adicionar ao workspaceAdd to workspace Cria o aplicativo de funções no workspace atual.Creates the function app in the current workspace.

O Visual Studio Code cria o projeto de aplicativo de função em um novo workspace.Visual Studio Code creates the function app project in a new workspace. Este projeto contém os arquivos de configuração host.json e local.settings.json, além de quaisquer arquivos de projeto específicos a uma linguagem.This project contains the host.json and local.settings.json configuration files, plus any language-specific project files.

Uma nova função disparada por HTTP também é criada na pasta HttpTrigger do projeto do aplicativo de função.A new HTTP triggered function is also created in the HttpTrigger folder of the function app project.

Executar a função localmenteRun the function locally

As Ferramentas Principais do Azure Functions permitem executar um projeto do Azure Functions no seu computador de desenvolvimento local.Azure Functions Core Tools lets you run an Azure Functions project on your local development computer.

  1. Para testar sua função, defina um ponto de interrupção no código da função e pressione F5 para iniciar o projeto de aplicativo de funções.To test your function, set a breakpoint in the function code and press F5 to start the function app project. A saída do Core Tools é exibida no painel Terminal.Output from Core Tools is displayed in the Terminal panel.

  2. No painel Terminal, copie o ponto de extremidade de URL da sua função disparada por HTTP.In the Terminal panel, copy the URL endpoint of your HTTP-triggered function.

    Saída local do Azure

  3. Cole a URL para a solicitação HTTP na barra de endereços do navegador.Paste the URL for the HTTP request into your browser's address bar. Acrescente o valor de cadeia de consulta ?name=<yourname> a essa URL e execute a solicitação.Append the query string ?name=<yourname> to this URL and execute the request. A execução é pausada quando o ponto de interrupção é atingido.Execution is paused when the breakpoint is hit.

  4. Quando você continua a execução, o exemplo a seguir mostra a resposta no navegador à solicitação GET:When you continue the execution, the following shows the response in the browser to the GET request:

    Resposta da função localhost no navegador

  5. Para interromper a depuração, pressione Shift + F5.To stop debugging, press Shift + F5.

Após verificar se a função foi executada corretamente no computador local, é hora de publicar o projeto no Azure.After you've verified that the function runs correctly on your local computer, it's time to publish the project to Azure.

Entrar no AzureSign in to Azure

Antes de poder publicar seu aplicativo, você precisa entrar no Azure.Before you can publish your app, you must sign in to Azure.

  1. Na área Azure: Functions, escolha Entrar no Azure… . Se você não tiver uma, poderá Criar uma conta gratuita do Azure.In the Azure: Functions area, choose Sign in to Azure.... If you don't already have one, you can Create a free Azure account.

    Resposta da função localhost no navegador

  2. Quando solicitado, selecione Copiar e abrir, ou copie o código exibido e abra https://aka.ms/devicelogin no seu navegador.When prompted, select Copy & Open, or copy the displayed code and open https://aka.ms/devicelogin in your browser.

  3. Cole o código copiado na página Logon do dispositivo, verifique a entrada para o Visual Studio Code e selecione Continuar.Paste the copied code in the Device Login page, verify the sign in for Visual Studio Code, then select Continue.

  4. Conclua a entrada usando as credenciais da conta do Azure.Complete the sign in using your Azure account credentials. Depois de entrar com sucesso, você pode fechar o navegador.After you have successfully signed in, you can close the browser.

Publicar o projeto no AzurePublish the project to Azure

O Visual Studio Code permite que você publique seu projeto de funções diretamente no Azure.Visual Studio Code lets you publish your functions project directly to Azure. No processo, você criará um aplicativo de funções e recursos relacionados em sua assinatura do Azure.In the process, you create a function app and related resources in your Azure subscription. O aplicativo de funções fornece um contexto de execução para suas funções.The function app provides an execution context for your functions. O projeto é empacotado e implantado para o novo aplicativo de função em sua assinatura do Azure.The project is packaged and deployed to the new function app in your Azure subscription.

Por padrão, o Visual Studio Code cria todos os recursos do Azure necessários para criar seu aplicativo de funções.By default, Visual Studio Code creates all of the Azure resources required to create your function app. Os nomes desses recursos são baseados no nome do aplicativo de funções escolhido.The names of these resources are based on the function app name you choose. Se precisar ter controle total sobre os recursos criados, você pode publicar usando opções avançadas.If you need to have full control of the created resources, you can instead publish using advanced options.

Esta seção pressupõe que você está criando um novo aplicativo de funções no Azure.This section assumes that you are creating a new function app in Azure.

Importante

Publicar em um aplicativo de funções existente substitui o conteúdo desse aplicativo no Azure.Publishing to an existing function app overwrites the content of that app in Azure.

  1. No Visual Studio Code, pressione F1 para abrir a paleta de comandos.In Visual Studio Code, press F1 to open the command palette. Na paleta de comandos, pesquise e selecione Azure Functions: Deploy to function app....In the command palette, search for and select Azure Functions: Deploy to function app....

  2. Se você ainda não estiver conectado, será solicitado a Entrar no Azure.If not signed-in, you are prompted to Sign in to Azure. Você também pode Criar uma conta gratuita do Azure.You can also Create a free Azure account. Após entrar pelo navegador, volte ao Visual Studio Code.After successful sign in from the browser, go back to Visual Studio Code.

  3. Se você tiver mais de uma assinatura, Escolha uma assinatura para o aplicativo de funções e, em seguida, escolha + Criar novo aplicativo de funções no Azure.If you have multiple subscriptions, Select a subscription for the function app, then choose + Create New Function App in Azure.

  4. Digite um nome globalmente exclusivo que identifica seu aplicativo de funções e pressione Enter.Type a globally unique name that identifies your function app and press Enter. Caracteres válidos para um nome de aplicativo de funções são a-z, 0-9 e -.Valid characters for a function app name are a-z, 0-9, and -.

    Quando você pressiona Enter, os seguintes recursos do Azure são criados em sua assinatura:When you press Enter, the following Azure resources are created in your subscription:

    • Grupo de recursos : Contém todos os recursos criados do Azure.Resource group: Contains all of the created Azure resources. O nome é baseado no nome de seu aplicativo de funções.The name is based on your function app name.
    • Conta de armazenamento : Uma conta de armazenamento padrão é criada com um nome exclusivo baseado no nome de seu aplicativo de funções.Storage account: A standard Storage account is created with a unique name that is based on your function app name.
    • Plano de hospedagem : Um plano de consumo é criado na região Oeste dos EUA para hospedar seu aplicativo de funções sem servidor.Hosting plan: A consumption plan is created in the West US region to host your serverless function app.
    • Aplicativo de funções: Seu projeto é implantado e executado no novo aplicativo de funções.Function app: Your project is deployed to and runs in this new function app.

    Uma notificação é exibida depois que seu aplicativo de funções é criado e o pacote de implantação é aplicado.A notification is displayed after your function app is created and the deployment package is applied. Escolha Exibir Saída nessa notificação para exibir a criação e os resultados da implantação, incluindo os recursos do Azure que você criou.Select View Output in this notification to view the creation and deployment results, including the Azure resources that you created.

  5. De volta na área Azure: Functions, expanda o novo aplicativo de funções em sua assinatura.Back in the Azure: Functions area, expand the new function app under your subscription. Expanda Funções, clique com botão direito do mouse em HttpTrigger e, em seguida, escolha Copiar URL da função.Expand Functions, right-click HttpTrigger, and then choose Copy function URL.

    Copiar a URL da função para o novo gatilho HTTP

Executar a função no AzureRun the function in Azure

  1. Copie a URL do gatilho de HTTP do painel Saída.Copy the URL of the HTTP trigger from the Output panel. Essa URL inclui a chave de função, que é passada para o parâmetro de consulta code.This URL includes the function key, which is passed to the code query parameter. Assim como anteriormente, certifique-se de adicionar o valor de cadeia de caracteres de consulta ?name=<yourname> a essa URL e execute a solicitação.As before, make sure to add the query string ?name=<yourname> to the end of this URL and execute the request.

    A URL que chama a função HTTP disparada deve estar no seguinte formato:The URL that calls your HTTP-triggered function should be in the following format:

     http://<functionappname>.azurewebsites.net/api/<functionname>?code=<function_key>&name=<yourname> 
    
  2. Cole essa nova URL para a solicitação HTTP na barra de endereços do navegador.Paste this new URL for the HTTP request into your browser's address bar. O exemplo a seguir mostra a resposta no navegador à solicitação GET remota retornada pela função:The following shows the response in the browser to the remote GET request returned by the function:

    Resposta da função no navegador

Próximas etapasNext steps

Você usou o Visual Studio Code para criar um aplicativo de funções com uma função disparada por HTTP simples.You have used Visual Studio Code to create a function app with a simple HTTP-triggered function. No próximo artigo, você pode expandir essa função adicionando uma associação de saída.In the next article, you expand that function by adding an output binding. Essa associação grava a cadeia de caracteres da solicitação HTTP em uma mensagem em uma fila do Armazenamento de Filas do Azure.This binding writes the string from the HTTP request to a message in an Azure Queue Storage queue. O próximo artigo também mostra como limpar esses novos recursos do Azure, removendo o grupo de recursos que você criou.The next article also shows you how to clean up these new Azure resources by removing the resource group you created.