Quickstart: Criar uma função no Azure com o Visual Studio CodeQuickstart: Create a function in Azure using Visual Studio Code

Neste artigo, utiliza o Código do Estúdio Visual para criar uma função baseada na biblioteca de classe C# que responda aos pedidos HTTP.In this article, you use Visual Studio Code to create a C# class library-based function that responds to HTTP requests. Depois de testar o código localmente, implemente-o para o ambiente sem servidor das Funções Azure.After testing the code locally, you deploy it to the serverless environment of Azure Functions.

Neste artigo, utiliza o Código do Estúdio Visual para criar uma função JavaScript que responde a pedidos HTTP.In this article, you use Visual Studio Code to create a JavaScript function that responds to HTTP requests. Depois de testar o código localmente, implemente-o para o ambiente sem servidor das Funções Azure.After testing the code locally, you deploy it to the serverless environment of Azure Functions.

Neste artigo, utiliza o Código do Estúdio Visual para criar uma função TypeScript que responde a pedidos HTTP.In this article, you use Visual Studio Code to create a TypeScript function that responds to HTTP requests. Depois de testar o código localmente, implemente-o para o ambiente sem servidor das Funções Azure.After testing the code locally, you deploy it to the serverless environment of Azure Functions.

Neste artigo, utiliza o Código do Estúdio Visual para criar uma função PowerShell que responde a pedidos HTTP.In this article, you use Visual Studio Code to create a PowerShell function that responds to HTTP requests. Depois de testar o código localmente, implemente-o para o ambiente sem servidor das Funções Azure.After testing the code locally, you deploy it to the serverless environment of Azure Functions.

Neste artigo, utiliza o Código do Estúdio Visual para criar uma função Python que responde aos pedidos HTTP.In this article, you use Visual Studio Code to create a Python function that responds to HTTP requests. Depois de testar o código localmente, implemente-o para o ambiente sem servidor das Funções Azure.After testing the code locally, you deploy it to the serverless environment of Azure Functions.

Neste artigo, utiliza o Código do Estúdio Visual para criar uma função Java que responde aos pedidos HTTP.In this article, you use Visual Studio Code to create a Java function that responds to HTTP requests. Depois de testar o código localmente, implemente-o para o ambiente sem servidor das Funções Azure.After testing the code locally, you deploy it to the serverless environment of Azure Functions.

Completar este quickstart incorre num pequeno custo de alguns usd ou menos na sua conta Azure.Completing this quickstart incurs a small cost of a few USD cents or less in your Azure account.

Há também uma versão baseada em CLI deste artigo.There's also a CLI-based version of this article.

Nota

Se o Visual Studio Code não é a sua ferramenta de desenvolvimento preferencial, confira os nossos tutoriais semelhantes para desenvolvedores de Java usando Maven, Gradle e IntelliJ IDEA.If Visual Studio Code isn't your prefered development tool, check out our similar tutorials for Java developers using Maven, Gradle and IntelliJ IDEA.

Configurar o ambienteConfigure your environment

Antes de começar, certifique-se de que tem os seguintes requisitos em vigor:Before you get started, make sure you have the following requirements in place:

  • Node.js, Versões LTS ativas e de manutenção (10.14.1 recomendado).Node.js, Active LTS and Maintenance LTS versions (10.14.1 recommended). Utilize o node --version comando para verificar a sua versão.Use the node --version command to check your version.

Crie o seu projeto localCreate your local project

Nesta secção, utiliza o Código do Estúdio Visual para criar um projeto local de Funções Azure no seu idioma escolhido.In this section, you use Visual Studio Code to create a local Azure Functions project in your chosen language. Mais tarde neste artigo, publicará o seu código de função para Azure.Later in this article, you'll publish your function code to Azure.

  1. Escolha o ícone Azure na barra de Atividade, em seguida, na área Azure: Funções, selecione o novo projeto... ícone.Choose the Azure icon in the Activity bar, then in the Azure: Functions area, select the Create new project... icon.

    Escolha Criar um novo projeto

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

    Nota

    Estes passos foram concebidos para serem concluídos fora de um espaço de trabalho.These steps were designed to be completed outside of a workspace. Neste caso, não selecione uma pasta de projeto que faz parte de uma área de trabalho.In this case, do not select a project folder that is part of a workspace.

  3. Fornecer as seguintes informações nas instruções:Provide the following information at the prompts:

    • Selecione um idioma para o seu projeto de função: Escolha C# .Select a language for your function project: Choose C#.
    • Selecione um idioma para o seu projeto de função: Escolha JavaScript .Select a language for your function project: Choose JavaScript.
    • Selecione um idioma para o seu projeto de função: Escolha TypeScript .Select a language for your function project: Choose TypeScript.
    • Selecione um idioma para o seu projeto de função: Escolha PowerShell .Select a language for your function project: Choose PowerShell.
    • Selecione um idioma para o seu projeto de função: Escolha Python .Select a language for your function project: Choose Python.

    • Selecione um pseudónimo Python para criar um ambiente virtual: Escolha a localização do seu intérprete Python.Select a Python alias to create a virtual environment: Choose the location of your Python interpreter. Se a localização não for mostrada, escreva em todo o caminho para o binário Python.If the location isn't shown, type in the full path to your Python binary.

    • Selecione um idioma para o seu projeto de função: Escolha Java .Select a language for your function project: Choose Java.

    • Fornecer um ID de grupo: Escolha com.function .Provide a group ID: Choose com.function.

    • Fornecer uma identificação de artefacto: Escolha myFunction .Provide an artifact ID: Choose myFunction.

    • Fornecer uma versão: Escolha 1.0-SNAPSHOT .Provide a version: Choose 1.0-SNAPSHOT.

    • Fornecer um nome de pacote: Escolha com.function .Provide a package name: Choose com.function.

    • Fornecer um nome de aplicação: myFunction-12345 Escolha.Provide an app name: Choose myFunction-12345.

    • Selecione um modelo para a primeira função do seu projeto: Escolha HTTP trigger .Select a template for your project's first function: Choose HTTP trigger.

    • Fornecer um nome de função: HttpExample Digite .Provide a function name: Type HttpExample.

    • Fornecer um espaço de nome : Tipo My.Functions .Provide a namespace: Type My.Functions.
    • Nível de autorização: Anonymous Escolha, que permite a qualquer pessoa ligar para o ponto final da sua função.Authorization level: Choose Anonymous, which enables anyone to call your function endpoint. Para saber mais sobre o nível de autorização, consulte as teclas de Autorização.To learn about authorization level, see Authorization keys.
    • Selecione como pretende abrir o seu projeto: Escolha Add to workspace .Select how you would like to open your project: Choose Add to workspace.
  4. Utilizando esta informação, o Visual Studio Code gera um projeto Azure Functions com um gatilho HTTP.Using this information, Visual Studio Code generates an Azure Functions project with an HTTP trigger. Pode ver os ficheiros de projeto locais no Explorer.You can view the local project files in the Explorer. Para saber mais sobre ficheiros que são criados, consulte os ficheiros do projeto Gerados.To learn more about files that are created, see Generated project files.

Executar localmente a funçãoRun the function locally

O Visual Studio Code integra-se com as Ferramentas Core funções do Azure para permitir que execute este projeto no seu computador de desenvolvimento local antes de publicar no Azure.Visual Studio Code integrates with Azure Functions Core Tools to let you run this project on your local development computer before you publish to Azure.

  1. Para ligar para a sua função, prima F5 para iniciar o projeto da aplicação de funções.To call your function, press F5 to start the function app project. São apresentados os resultados das Ferramentas de Núcleo no painel Terminal.Output from Core Tools is displayed in the Terminal panel.

  2. Se ainda não tiver instalado as ferramentas core funções do Azure, selecione Instalar à mão.If you haven't already installed Azure Functions Core Tools, select Install at the prompt. Quando as Ferramentas Core são instaladas, a sua aplicação começa no painel Terminal.When the Core Tools are installed, your app starts in the Terminal panel. Pode ver o ponto final url da sua função desencadeada em HTTP a funcionar localmente.You can see the URL endpoint of your HTTP-triggered function running locally.

    Resultado local do Azure

  3. Com as Ferramentas Core em execução, navegue ?name=Functions para o seguinte URL para executar um pedido GET, que inclui a corda de consulta.With Core Tools running, navigate to the following URL to execute a GET request, which includes ?name=Functions query string.

    http://localhost:7071/api/HttpExample?name=Functions

  4. Uma resposta é devolvida, que se parece com a seguinte num browser:A response is returned, which looks like the following in a browser:

    Resposta da função localhost no browser

  5. A informação sobre o pedido é mostrada no painel terminal.Information about the request is shown in Terminal panel.

    Execução de funções no painel terminal

  6. Prima Ctrl + C para parar as Ferramentas Core e desligar o desbugger.Press Ctrl + C to stop Core Tools and disconnect the debugger.

Executar localmente a funçãoRun the function locally

As Ferramentas Nucleares azure integram-se com o Código do Estúdio Visual para permitir que você execute e depura um projeto de Funções Azure localmente.Azure Functions Core Tools integrates with Visual Studio Code to let you run and debug an Azure Functions project locally. Para mais detalhes sobre como depurar o Código do Estúdio Visual, consulte as funções Debug PowerShell Azure localmente.For details on how to debug in Visual Studio Code, see Debug PowerShell Azure Functions locally.

  1. Pressione F5 para iniciar o projeto da aplicação de funções.Press F5 to start the function app project. São apresentados os resultados das Ferramentas de Núcleo no painel Terminal.Output from Core Tools is displayed in the Terminal panel.

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

    Resultado local do Azure

  3. Anexar a corda ?name=<yourname> de consulta a Invoke-RestMethod este URL e, em seguida, usar numa segunda solicitação de comando PowerShell para executar o pedido, da seguinte forma:Append the query string ?name=<yourname> to this URL, and then use Invoke-RestMethod in a second PowerShell command prompt to execute the request, as follows:

    PS > Invoke-RestMethod -Method Get -Uri http://localhost:7071/api/HttpTrigger?name=PowerShell
    Hello PowerShell
    

    Também pode executar o pedido GET a partir de um browser a partir do seguinte URL:You can also execute the GET request from a browser from the following URL:

    http://localhost:7071/api/HttpExample?name=PowerShell

    Quando liga para o ponto final name httpTrigger sem passar um parâmetro, quer como BadRequest parâmetro de consulta, quer no corpo, a função devolve um erro.When you call the HttpTrigger endpoint without passing a name parameter either as a query parameter or in the body, the function returns a BadRequest error. Ao rever o código em run.ps1, vê-se que este erro ocorre por design.When you review the code in run.ps1, you see that this error occurs by design.

  4. A informação sobre o pedido é mostrada no painel terminal.Information about the request is shown in Terminal panel.

    Execução de funções no painel terminal

  5. Quando terminar, prima CTRL + C para parar as Ferramentas Core.When done, press Ctrl + C to stop Core Tools.

Depois de verificar que a função é executada corretamente no computador local, deve 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.

Depois de verificar que a função funciona corretamente no seu computador local, é hora de usar o Código do Estúdio Visual para publicar o projeto diretamente para o Azure.After you've verified that the function runs correctly on your local computer, it's time to use Visual Studio Code to publish the project directly to Azure.

Iniciar sessão no AzureSign in to Azure

Antes de poder publicar a aplicação, tem de iniciar sessão no Azure.Before you can publish your app, you must sign in to Azure.

  1. Se ainda não se inscreveu, escolha o ícone Azure na barra de Atividades, então na área Azure: Funções, escolha Iniciar súmido para Azure.... Se ainda não tiver um, pode criar uma conta Azure gratuita.If you aren't already signed in, choose the Azure icon in the Activity bar, then in the Azure: Functions area, choose Sign in to Azure.... If you don't already have one, you can Create a free Azure account. Os alunos podem clicar aqui para ** criar uma conta gratuita para estudantes**Students can click here to Create a free Azure for Students account

    Resposta da função localhost no browser

    Se já assinou, vá para a próxima secção.If you're already signed in, go to the next section.

  2. Quando solicitado no navegador, escolha a sua conta Azure e inscreva-se usando as suas credenciais de conta Azure.When prompted in the browser, choose your Azure account and sign in using your Azure account credentials.

  3. Depois de ter assinado com sucesso, pode fechar a nova janela do navegador.After you've successfully signed in, you can close the new browser window. As subscrições que pertencem à sua conta Azure são apresentadas na barra Lateral.The subscriptions that belong to your Azure account are displayed in the Side bar.

Publicar o projeto no AzurePublish the project to Azure

Nesta secção, cria uma aplicação de função e recursos relacionados na subscrição do Azure e, em seguida, implementa o seu código.In this section, you create a function app and related resources in your Azure subscription and then deploy your code.

Importante

A publicação de uma aplicação de funções existente substitui o conteúdo dessa aplicação no Azure.Publishing to an existing function app overwrites the content of that app in Azure.

  1. Escolha o ícone Azure na barra de Atividades e, em seguida, na área Azure: Funções, escolha o Botão Deploy para funcionar... botão.Choose the Azure icon in the Activity bar, then in the Azure: Functions area, choose the Deploy to function app... button.

    Publique o seu projeto na Azure

  2. Forneça as seguintes informações nas instruções:Provide the following information at the prompts:

    • Selecione pasta: Escolha uma pasta do seu espaço de trabalho ou navegue para uma que contenha a sua aplicação de função.Select folder: Choose a folder from your workspace or browse to one that contains your function app. Não verá isto se já tiver uma aplicação de função válida aberta.You won't see this if you already have a valid function app opened.

    • Selecione subscrição: Escolha a subscrição para utilizar.Select subscription: Choose the subscription to use. Não verá isto se tiver apenas uma assinatura.You won't see this if you only have one subscription.

    • Selecione App de Funções em Azure: Escolha + Create new Function App.Select Function App in Azure: Choose + Create new Function App. (Não escolha a Advanced opção, que não está abrangida neste artigo.)(Don't choose the Advanced option, which isn't covered in this article.)

    • Introduza um nome globalmente único para a aplicação de funções: Escreva um nome válido num caminho de URL.Enter a globally unique name for the function app: Type a name that is valid in a URL path. O nome que digita é validado para se certificar de que é único nas Funções Azure.The name you type is validated to make sure that it's unique in Azure Functions.

    • Selecione um tempode execução : Escolha a versão de Python em que tem estado a funcionar localmente.Select a runtime: Choose the version of Python you've been running on locally. Pode usar python --version o comando para verificar a sua versão.You can use the python --version command to check your version.
    • Selecione um tempode execução : Escolha a versão do Node.js em que tem estado a correr localmente.Select a runtime: Choose the version of Node.js you've been running on locally. Pode usar node --version o comando para verificar a sua versão.You can use the node --version command to check your version.
    • Selecione um local para novos recursos: Para um melhor desempenho, escolha uma região perto de si.Select a location for new resources: For better performance, choose a region near you.
  3. Quando concluído, os seguintes recursos Azure são criados na sua subscrição, utilizando nomes baseados no nome da sua app de função:When completed, the following Azure resources are created in your subscription, using names based on your function app name:

    • Um grupo de recursos, que é um recipiente lógico para recursos relacionados.A resource group, which is a logical container for related resources.
    • Uma conta de Armazenamento Azure padrão, que mantém informações estatais e outras sobre os seus projetos.A standard Azure Storage account, which maintains state and other information about your projects.
    • Um plano de consumo, que define o anfitrião subjacente para a sua aplicação de função sem servidores.A consumption plan, which defines the underlying host for your serverless function app.
    • Uma aplicação de função, que fornece o ambiente para executar o seu código de função.A function app, which provides the environment for executing your function code. Uma aplicação de função permite-lhe agrupar funções como uma unidade lógica para uma gestão mais fácil, implementação e partilha de recursos dentro do mesmo plano de hospedagem.A function app lets you group functions as a logical unit for easier management, deployment, and sharing of resources within the same hosting plan.
    • Uma instância de Insights de Aplicação ligada à aplicação de função, que rastreia o uso da sua função sem servidor.An Application Insights instance connected to the function app, which tracks usage of your serverless function.

    Depois de criar a aplicação de funções, é apresentada uma notificação e o pacote de implementação é aplicado.A notification is displayed after your function app is created and the deployment package is applied.

  4. Selecione Ver Output nesta notificação para visualizar os resultados da criação e implementação, incluindo os recursos Azure que criou.Select View Output in this notification to view the creation and deployment results, including the Azure resources that you created. Se perder a notificação, selecione o ícone do sino no canto inferior direito para vê-lo novamente.If you miss the notification, select the bell icon in the lower right corner to see it again.

    Criar notificação completa

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

  1. De volta à área Azure: Funções na barra lateral, expanda a nova aplicação de função sob a sua subscrição.Back in the Azure: Functions area in the side bar, expand the new function app under your subscription. Expandir funções, clique à direita (Windows) ou Ctrl + clique (macOS) em HttpExample, e, em seguida, escolha URL de função copiar.Expand Functions, right-click (Windows) or Ctrl + click (macOS) on HttpExample, and then choose Copy function URL.

    Copie o URL de função para o novo gatilho HTTP

  2. Cole este URL para o pedido HTTP na barra de endereços do seu navegador, adicione o name string de consulta quanto ao final deste URL ?name=Functions e, em seguida, execute o pedido.Paste this URL for the HTTP request into your browser's address bar, add the name query string as ?name=Functions to the end of this URL, and then execute the request. O URL que chama a função acionada por HTTP deve estar no seguinte formato:The URL that calls your HTTP-triggered function should be in the following format:

    http://<functionappname>.azurewebsites.net/api/httpexample?name=Functions
    

    O exemplo a seguir mostra a resposta no navegador ao pedido remoto GET devolvido pela função:The following example shows the response in the browser to the remote GET request returned by the function:

    Resposta da função no browser

Limpar recursosClean up resources

Quando continuar até ao próximo passo, adicione uma fila de armazenamento Azure à sua função,terá de manter todos os seus recursos no lugar para se basear no que já fez.When you continue to the next step, Add an Azure Storage queue binding to your function, you'll need to keep all your resources in place to build on what you've already done.

Caso contrário, pode utilizar os seguintes passos para eliminar a aplicação de função e os seus recursos relacionados para evitar incorrer em custos adicionais.Otherwise, you can use the following steps to delete the function app and its related resources to avoid incurring any further costs.

  1. No Visual Studio Code, prima F1 para abrir a paleta de comando.In Visual Studio Code, press F1 to open the command palette. Na paleta de comando, procure e selecione Azure Functions: Open in portal .In the command palette, search for and select Azure Functions: Open in portal.

  2. Escolha a sua aplicação de função e prima Enter.Choose your function app, and press Enter. A página da aplicação de funções abre no portal Azure.The function app page opens in the Azure portal.

  3. No separador Visão Geral, selecione o link nomeado ao lado do grupo Recurso.In the Overview tab, select the named link next to Resource group.

    Selecione o grupo de recursos a eliminar na página da aplicação de função.

  4. Na página Grupo de recursos, reveja a lista dos recursos incluídos e certifique-se de que são aqueles que pretende eliminar.In the Resource group page, review the list of included resources, and verify that they are the ones you want to delete.

  5. Selecione Eliminar grupo de recursos e siga as instruções.Select Delete resource group, and follow the instructions.

    A eliminação pode demorar alguns minutos.Deletion may take a couple of minutes. Quando terminar, é apresentada uma notificação durante alguns segundos.When it's done, a notification appears for a few seconds. Também pode selecionar o ícone de sino na parte superior da página para ver a notificação.You can also select the bell icon at the top of the page to view the notification.

Para saber mais sobre os custos das funções, consulte os custos do plano de consumoestimado.To learn more about Functions costs, see Estimating Consumption plan costs.

Passos seguintesNext steps

Utilizou o Visual Studio Code para criar uma aplicação de funções com uma função simples acionada por HTTP.You have used Visual Studio Code to create a function app with a simple HTTP-triggered function. No artigo seguinte, expande essa função adicionando uma ligação de saída.In the next article, you expand that function by adding an output binding. Esta ligação escreve o string do pedido HTTP para uma mensagem numa fila de armazenamento de fila Azure.This binding writes the string from the HTTP request to a message in an Azure Queue Storage queue.