Criar uma função em Go ou Rust usando Código de Estúdio Visual - Funções Azure | Microsoft Docs
Quickstart: Criar uma função Go ou Rust em Azure usando Código de Estúdio Visual
Neste artigo, utiliza o Código do Estúdio Visual para criar uma função de manipulador personalizado que responde aos pedidos HTTP. Depois de testar o código localmente, implemente-o para o ambiente sem servidor das Funções Azure.
Os manipuladores personalizados podem ser utilizados para criar funções em qualquer idioma ou tempo de execução, executando um processo de servidor HTTP. Este artigo apoia tanto Go como Rust.
A versão 3.x das Ferramentas Principais do Azure Functions. Utilize o func --version comando para verificar se está corretamente instalado.
Vá,versão mais recente recomendada. Utilize o go version comando para verificar a sua versão.
Cano de ferramentas de ferrugem utilizando ferrugem. Utilize o rustc --version comando para verificar a sua versão.
Nesta secção, você usa o Código do Estúdio Visual para criar um projeto local de manipuladores personalizados Azure Functions. Mais adiante neste artigo, irá publicar o seu código de função no Azure.
Selecione um idioma para o seu projeto de função: Selecione Custom.
Utilizando esta informação, o Visual Studio Code gera um projeto Azure Functions com uma função de gatilho HTTP. Pode ver os ficheiros de projeto locais no Explorer. Para saber mais sobre ficheiros que são criados, consulte os ficheiros do projeto Gerados.
Criar e construir a sua função
A function.jsficheiro na pasta HttpExample declara uma função de gatilho HTTP. Completa-se a função adicionando um manipulador e compilando-a num executável.
Prima Ctrl + N (Cmd + N no macOS) para criar um novo ficheiro. Guarde-o como handler.go na raiz da aplicação de função (na mesma pasta quehost.js).
Em handler.go, adicione o seguinte código e guarde o ficheiro. Este é o seu manipulador personalizado Go.
Prima Ctrl + Shift + ' ou selecione Novo Terminal a partir do menu Terminal para abrir um novo terminal integrado no Código VS.
Compile o seu manipulador personalizado utilizando o seguinte comando. Um ficheiro executável denominado handler handler.exe (no Windows) é a saída na pasta raiz da aplicação de função.
Na raiz da aplicação de função (a mesma pasta quehost.js), inicialize um projeto Rust chamado handler .
Em Cargo.toml, adicione as seguintes dependências necessárias para completar este arranque rápido. O exemplo utiliza a estrutura do servidor web de dobra.
Em src/main.rs, adicione o seguinte código e guarde o ficheiro. Este é o seu manipulador personalizado Rust.
Compilar um binário para o seu manipulador personalizado. Um ficheiro executável denominado handler handler.exe (no Windows) é a saída na pasta raiz da aplicação de função.
Configure a sua aplicação de função
O anfitrião da função precisa de ser configurado para executar o binário do seu manipulador habitual quando começar.
Abra host.js.
Na customHandler.description secção, desacione o valor de defaultExecutablePath handler (no Windows, desapedahá-lo para handler.exe ).
Na customHandler secção, adicione um imóvel nomeado enableForwardingHttpRequest e desaveri o seu valor para true . Para funções que consistem apenas num gatilho HTTP, esta definição simplifica a programação, permitindo-lhe trabalhar com um pedido HTTP típico em vez da carga útildo pedido de pedido de encomenda personalizado .
Confirme que a customHandler secção parece este exemplo. Guarde o ficheiro.
A aplicação de função está configurada para iniciar o seu manipulador personalizado executável.
Pode executar este projeto no seu computador de desenvolvimento local antes de publicar para a Azure.
No terminal integrado, inicie a aplicação de função utilizando ferramentas principais de funções Azure.
Com as Ferramentas Core em execução, navegue para o seguinte URL para executar um pedido GET, que inclui ?name=Functions cadeia de consulta.
Uma resposta é devolvida, que se parece com o seguinte num browser:
As informações sobre o pedido são mostradas no painel terminal.
Prima Ctrl + C para parar as Ferramentas Core.
Compilar o manipulador personalizado para Azure
Nesta secção, publica o seu projeto para a Azure numa aplicação de função que executa o Linux. Na maioria dos casos, deve recompler o seu binário e ajustar a sua configuração para corresponder à plataforma-alvo antes de publicá-la ao Azure.
No terminal integrado, compile o manipulador para Linux/x64. Um binário nomeado handler é criado na raiz da aplicação de função.
Mude o defaultExecutablePath inhost.js de handler.exe handler . Isto instrui a aplicação de função para executar o binário Linux.
Criar um ficheiro em .cargo/config. Adicione o seguinte conteúdo e guarde o ficheiro.
No terminal integrado, compile o manipulador para Linux/x64. Um binário chamado handler é criado. Copie-o para a raiz da aplicação de função.
Se estiver a utilizar o Windows, altere o defaultExecutablePath inhost.js handler.exe de handler . Isto instrui a aplicação de função para executar o binário Linux.
Adicione a seguinte linha ao ficheiro .funcignore:
Isto impede a publicação do conteúdo da pasta-alvo.
Selecione Aplicação de Funções no Azure: Selecione + Create new Function App (advanced).
A advanced opção permite-lhe escolher o sistema operativo específico em que a sua aplicação de função funciona no Azure, que neste caso é o Linux.
Selecione uma pilha de tempo de execução: Escolha Custom Handler .
Selecione um SISTEMA: Escolha Linux .
Selecione um plano de hospedagem: Escolha Consumption .
Selecione um grupo de recursos: Escolha + Create new resource group . Insira um nome para o grupo de recursos. Este nome deve ser único dentro da sua assinatura Azure. Pode usar o nome sugerido na solicitação.
Selecione uma conta de armazenamento: Escolha + Create new storage account . Este nome deve ser globalmente único dentro de Azure. Pode usar o nome sugerido na solicitação.
Selecione um recurso Application Insights: Escolha + Create Application Insights resource . Este nome deve ser globalmente único dentro de Azure. Pode usar o nome sugerido na solicitação.
Selecione uma localização para novos recursos: Para um melhor desempenho, escolha uma região perto de si. A extensão mostra o estado dos recursos individuais à medida que estão a ser criados em Azure na área de notificação.