Utilizar as Funções para adicionar mensagens a uma fila do Armazenamento do Azure

Nas Funções do Azure, os enlaces de entrada e saída proporcionam uma forma declarativa para tornar os dados dos serviços externos disponíveis para o seu código. Neste artigo, você usa uma associação de saída para criar uma mensagem em uma fila quando uma solicitação HTTP dispara uma função. Você usa o contêiner de armazenamento do Azure para exibir as mensagens de fila que sua função cria.

Pré-requisitos

Adicionar um enlace de saída

Nesta seção, você usa a interface do usuário do portal para adicionar uma associação de saída do Armazenamento de Filas do Azure à função criada nos pré-requisitos. Essa associação torna possível escrever código mínimo para criar uma mensagem em uma fila. Você não precisa escrever código para tarefas como abrir uma conexão de armazenamento, criar uma fila ou obter uma referência a uma fila. O tempo de execução das Funções do Azure e o enlace de saída da fila tratam dessas tarefas por si.

  1. No portal do Azure, procure e selecione o aplicativo de função que você criou em Criar sua primeira função a partir do portal do Azure.

  2. No seu aplicativo de função, selecione a função que você criou.

  3. Selecione Integração e, em seguida, selecione + Adicionar saída.

    Captura de tela que mostra como criar uma ligação de saída para sua função.

  4. Selecione o tipo de associação Armazenamento de Filas do Azure e adicione as configurações conforme especificado na tabela a seguir a esta captura de tela:

    Captura de tela que mostra como adicionar uma associação de saída de Armazenamento de Fila a uma função no portal do Azure.

    Definição Valor sugerido descrição
    Nome do parâmetro da mensagem outputQueueItem O nome do parâmetro de enlace de saída.
    Nome da fila outqueue O nome da fila à qual se conectar em sua conta de armazenamento.
    Ligação da conta de armazenamento AzureWebJobsStorage Você pode usar a conexão de conta de armazenamento existente usada pelo seu aplicativo de função ou criar uma nova.
  5. Selecione OK para adicionar a ligação.

Agora que tem um enlace de saída definido, tem de atualizar o código para utilizar o enlace para adicionar mensagens a uma fila.

Adicione código que utiliza o enlace de saída

Nesta secção, adicione código que escreve uma mensagem para a fila de saída. A mensagem inclui o valor passado para o gatilho HTTP na cadeia de caracteres de consulta. Por exemplo, se a cadeia de caracteres de consulta incluir name=Azure, a mensagem da fila será Nome passado para a função: Azure.

  1. Na sua função, selecione Código + Teste para exibir o código da função no editor.

  2. Atualize o código da função, de acordo com o idioma da sua função:

    Adicione um parâmetro outputQueueItem à assinatura do método, conforme mostrado no exemplo a seguir:

    public static async Task<IActionResult> Run(HttpRequest req,
        ICollector<string> outputQueueItem, ILogger log)
    {
        ...
    }
    

    No corpo da função, imediatamente antes da return instrução, adicione o código que usa o parâmetro para criar uma mensagem de fila:

    outputQueueItem.Add("Name passed to the function: " + name);
    
  3. Selecione Guardar para guardar as alterações.

Testar a função

  1. Depois que as alterações de código forem salvas, selecione Testar.

  2. Confirme se o teste corresponde a esta captura de ecrã e, em seguida, selecione Executar.

    Captura de tela que mostra como testar a associação de Armazenamento de Fila no portal do Azure.

    Tenha em atenção que o Corpo do pedido contém o valor nameAzure. Esse valor aparece na mensagem de fila criada quando a função é invocada.

    Como alternativa à seleção de Executar, você pode chamar a função inserindo uma URL em um navegador e especificando o name valor na cadeia de caracteres de consulta. Esse método de navegador é mostrado em Criar sua primeira função a partir do portal do Azure.

  3. Verifique os registos para se certificar de que a função foi bem-sucedida.

    Uma nova fila chamada outqueue é criada em sua conta de armazenamento pelo tempo de execução do Functions quando a associação de saída é usada pela primeira vez. Use a conta de armazenamento para verificar se a fila e uma mensagem nela foram criadas.

Encontre a conta de armazenamento conectada ao AzureWebJobsStorage

  1. Na sua aplicação de funções, expanda Definições e, em seguida, selecione Variáveis de ambiente.

  2. Na guia Configurações do aplicativo, selecione AzureWebJobsStorage.

    Captura de ecrã que mostra a página Configuração com AzureWebJobsStorage selecionada.

  3. Localize e anote o nome da conta.

    Captura de ecrã que mostra como localizar a conta de armazenamento ligada ao AzureWebJobsStorage.

Examinar a fila de saída

  1. No grupo de recursos do seu aplicativo de função, selecione a conta de armazenamento que você está usando.

  2. Em Serviço de fila, selecione Filas e selecione a fila chamada outqueue.

    A fila contém a mensagem que a fila de enlace de saída da fila criou quando executou a função acionada por HTTP. Se invocou a função com o valor predefinido name do Azure, a mensagem de fila é Nome transmitido para a função: Azure.

  3. Execute a função novamente.

    Uma nova mensagem aparece na fila.

Clean up resources (Limpar recursos)

Nos passos anteriores, criou os recursos do Azure num grupo de recursos. Se provavelmente não necessitar desses recursos no futuro, pode eliminá-los ao eliminar o grupo de recursos.

No menu do portal do Azure ou na página inicial , selecione Grupos de recursos. Em seguida, na página Grupos de recursos, selecione myResourceGroup.

Na página myResourceGroup, certifique-se de que os recursos listados são aqueles que você deseja excluir.

Selecione Excluir grupo de recursos, digite myResourceGroup na caixa de texto para confirmar e selecione Excluir.

Neste artigo, você adicionou uma ligação de saída a uma função existente. Para obter mais informações sobre a associação ao Armazenamento de Filas, consulte Gatilho e ligações de Armazenamento em Fila.