Chamar pontos finais REST a partir de fluxos de trabalho no Azure Logic Apps

Com a operação HTTP + Swagger incorporada e o Azure Logic Apps, pode criar fluxos de trabalho de integração automatizados que chamam regularmente qualquer ponto final REST através de um ficheiro Swagger. O acionador HTTP + Swagger e a ação funcionam da mesma forma que o acionador HTTP e a ação , mas proporcionam uma melhor experiência no estruturador do fluxo de trabalho ao expor a estrutura da API e as saídas descritas pelo ficheiro Swagger. Para implementar um acionador de consulta, siga o padrão de consulta descrito em Criar APIs personalizadas para chamar outras APIs, serviços e sistemas a partir de fluxos de trabalho de aplicações lógicas.

Pré-requisitos

Adicionar um acionador HTTP + Swagger

Este acionador incorporado envia um pedido HTTP para um URL para um ficheiro Swagger que descreve uma API REST. Em seguida, o acionador devolve uma resposta que contém o conteúdo desse ficheiro.

  1. Inicie sessão no portal do Azure. Abra o fluxo de trabalho da aplicação lógica em branco no estruturador.

  2. No estruturador, na caixa de pesquisa, introduza swagger. Na lista Acionadores , selecione o acionador HTTP + Swagger .

    Selecione HTTP + Acionador Swagger

  3. Na caixa URL do PONTO FINAL do SWAGGER , introduza o URL do ficheiro Swagger que pretende e selecione Seguinte.

    Certifique-se de que utiliza ou cria o seu próprio ponto final. Como exemplo, estes passos utilizam o seguinte URL swagger da API Face dos Serviços Cognitivos localizado na região E.U.A. Oeste e podem não funcionar no seu acionador específico:

    https://westus.dev.cognitive.microsoft.com/docs/services/563879b61984550e40cbbe8d/export?DocumentFormat=Swagger&ApiName=Face%20API%20-%20V1.0

    Captura de ecrã que mostra o estruturador de fluxo de trabalho com o acionador

  4. Quando o estruturador mostrar as operações descritas pelo ficheiro Swagger, selecione a operação que pretende utilizar.

    Captura de ecrã que mostra o estruturador de fluxo de trabalho com o acionador

  5. Indique os valores dos parâmetros do acionador, que variam consoante a operação selecionada, que pretende incluir na chamada de ponto final. Configure a periodicidade para a frequência com que pretende que o acionador chame o ponto final.

    Este exemplo muda o nome do acionador para "HTTP + Swagger trigger: Face - Detect" para que o passo tenha um nome mais descritivo.

    Captura de ecrã que mostra o estruturador do fluxo de trabalho com o acionador

  6. Para adicionar outros parâmetros disponíveis, abra a lista Adicionar novo parâmetro e selecione os parâmetros que pretende.

    Para obter mais informações sobre os tipos de autenticação disponíveis para HTTP + Swagger, veja Adicionar autenticação a chamadas de saída.

  7. Continue a criar o fluxo de trabalho com ações que são executadas quando o acionador é acionado.

  8. Quando terminar, lembre-se de guardar o fluxo de trabalho. Na barra de ferramentas do estruturador, selecione Guardar.

Adicionar uma ação HTTP + Swagger

Esta ação incorporada envia um pedido HTTP para o URL do ficheiro Swagger que descreve uma API REST. Em seguida, a ação devolve uma resposta que contém o conteúdo desse ficheiro.

  1. Inicie sessão no portal do Azure. Abra o fluxo de trabalho da aplicação lógica no estruturador.

  2. No passo em que pretende adicionar a ação HTTP + Swagger , selecione Novo passo.

    Para adicionar uma ação entre os passos, mova o ponteiro sobre a seta entre os passos. Selecione o sinal de adição (+) apresentado e, em seguida, selecione Adicionar uma ação.

  3. No estruturador, na caixa de pesquisa, introduza swagger. Na lista Ações , selecione a ação HTTP + Swagger .

    Selecionar a ação HTTP + Swagger

  4. Na caixa URL do PONTO FINAL do SWAGGER , introduza o URL do ficheiro Swagger que pretende e selecione Seguinte.

    Certifique-se de que utiliza ou cria o seu próprio ponto final. Como exemplo, estes passos utilizam o seguinte URL swagger da API Face dos Serviços Cognitivos localizado na região E.U.A. Oeste e podem não funcionar na sua ação específica:

    https://westus.dev.cognitive.microsoft.com/docs/services/563879b61984550e40cbbe8d/export?DocumentFormat=Swagger&ApiName=Face%20API%20-%20V1.0

    Introduzir URL para o ponto final do Swagger

  5. Quando o estruturador mostrar as operações descritas pelo ficheiro Swagger, selecione a operação que pretende utilizar.

    Operações no ficheiro Swagger

  6. Indique os valores para os parâmetros de ação, que variam consoante a operação selecionada, que pretende incluir na chamada de ponto final.

    Este exemplo não tem parâmetros, mas muda o nome da ação para "HTTP + Ação Swagger: Face - Identifique" para que o passo tenha um nome mais descritivo.

    Detalhes da operação

  7. Para adicionar outros parâmetros disponíveis, abra a lista Adicionar novo parâmetro e selecione os parâmetros que pretende.

    Para obter mais informações sobre os tipos de autenticação disponíveis para HTTP + Swagger, veja Adicionar autenticação a chamadas de saída.

  8. Quando terminar, lembre-se de guardar o fluxo de trabalho da aplicação lógica. Na barra de ferramentas do estruturador, selecione Guardar.

Host Swagger in Azure Storage

Ainda pode referenciar um ficheiro Swagger que não está alojado ou que não cumpre os requisitos de segurança e de origem cruzada. Carregue o ficheiro Swagger para o contentor de blobs numa conta de armazenamento do Azure e ative o CORS nessa conta de armazenamento. Para criar, configurar e armazenar ficheiros Swagger no Armazenamento do Azure, siga estes passos:

  1. Criar uma conta de armazenamento do Azure.

  2. Agora, ative o CORS para o blob. No menu da sua conta de armazenamento, selecione CORS. No separador Serviço blob , especifique estes valores e, em seguida, selecione Guardar.

    Propriedade Valor
    Origens permitidas *
    Métodos permitidos GET, HEAD, PUT
    Cabeçalhos permitidos *
    Cabeçalhos expostos *
    Idade máxima (em segundos) 200

    Embora este exemplo utilize o portal do Azure, pode utilizar uma ferramenta como Explorador de Armazenamento do Azure ou configurar automaticamente esta definição com este script do PowerShell de exemplo.

  3. Criar um contentor de blobs. No painel Descrição Geral do contentor, selecione Alterar nível de acesso. Na lista Nível de acesso público , selecione Blob (acesso de leitura anónimo apenas para blobs) e selecione OK.

  4. Carregue o ficheiro Swagger para o contentor de blobs, através do portal do Azure ou Explorador de Armazenamento do Azure.

  5. Para referenciar o ficheiro no contentor de blobs, obtenha o URL HTTPS que segue este formato, que é sensível a maiúsculas e minúsculas, do Explorador de Armazenamento do Azure:

    https://<storage-account-name>.blob.core.windows.net/<blob-container-name>/<complete-swagger-file-name>?<query-parameters>

Referência do conector

Esta secção fornece mais informações sobre as saídas de um acionador ou ação HTTP + Swagger . A chamada HTTP + Swagger devolve estas informações:

Nome da propriedade Tipo Descrição
cabeçalhos Objeto Os cabeçalhos do pedido
corpo Objeto O objeto com o conteúdo do corpo do pedido
código de estado Número inteiro O código de estado do pedido
Código de estado Description
200 OK
202 Aceite
400 Pedido incorreto
401 Não autorizado
403 Proibido
404 Não Encontrado
500 Erro interno do servidor. Ocorreu um erro desconhecido.

Passos seguintes