Implementar teste de conectividade

O teste de conectividade é um ponto de entrada simples que pode ser definido para um conector a ser usado com Aplicativos Lógicos do Azure, Power Automate ou Power Apps. Ao expor uma operação para o teste de conectividade, o conector pode fornecer a validação de tempo de design e de tempo de execução dos parâmetros de conexão.

Pré-requisitos

Adicionar uma nova operação de teste de conectividade

A adição de uma operação para TestConnection é um processo muito simples. Você pode usar qualquer operação existente como um meio de teste da conexão ou pode adicionar uma operação específica que tenha o trabalho de somente testar os parâmetros de conexão. A operação deve ser um "get" e deve oferecer suporte a uma chamada sem parâmetros ou com parâmetros embutidos em código.

Na especificação OpenAPI, a adição de uma nova operação para essa finalidade deve ser semelhante a esta:

    "/diagnostics/testconnection": {
      "get": {
        "tags": [ "Diagnostics" ],
        "operationId": "TestMyAPIConnection",
        "consumes": [],
        "produces": [],
        "responses": {
          "200": { "description": "OK" },
          "default": { "description": "Operation Failed." }
        },
        "x-ms-visibility": "internal"
      }
    }

Importante

Observe que essa operação está marcada como internal. Se você adicionar um novo ponto de entrada para essa finalidade, é altamente recomendável marcar essa operação como oculta para que o usuário não a veja.

O ponto de extremidade destinado a ser usado como teste de conectividade deve ser identificado pela adição de uma extensão à API no nível superior, conforme abaixo:

 "x-ms-capabilities": {
    "testConnection": {
      "operationId": "TestMyAPIConnection",
      "parameters": {}
    }
  }

O operationId especificado nesse atributo deve existir nessa mesma especificação OpenAPI para ser válido.

Reutilizar uma operação existente para teste de conectividade

Geralmente, é mais simples e mais gerenciável identificar uma operação existente que pode validar a viabilidade da conexão sem incorrer em muitos custos ou latência. Isso pode ser feito sem a adição de uma nova operação; basta indicar qual operação usar e quais parâmetros passar (se houver).

No exemplo a seguir, usamos uma operação "get" existente chamada GetTables, a qual deverá ter sucesso se a conexão for válida e os parâmetros estiverem corretos. Para garantir que a operação de teste de conectividade seja executada o mais rápido possível, o exemplo também adiciona o parâmetro à chamada para especificar que apenas a primeira linha deve ser retornada.

 "x-ms-capabilities": {
    "testConnection": {
      "operationId": "GetTables",
      "parameters": {
        "$top": 1
      }
    }
  }

Implementar teste de conectividade

Caso você precise implementar o teste de conectividade e nenhuma outra operação existente seja apropriada para essa finalidade, você poderá fazer isso com uma chamada de back-end bastante simples. A operação não precisa usar nenhum parâmetro nem retornar conteúdo. O caminho da URL também não é importante e pode ser selecionado com base em sua preferência. Como única medida de sucesso para uma chamada de conexão de teste, basta haver uma resposta bem-sucedida (por exemplo, 200) da chamada HTTP. Na operação de conexão de teste, o contrato solicita que o conector valide o contexto de autenticação e os parâmetros de conexão.

Para fazer isso, basta consultar algo no back-end, o que já usará os parâmetros de autenticação e de qualquer banco de dados ou escopo que possa estar implícito. Consultar a linha superior de uma tabela simples é um bom exemplo de abordagem de teste de conectividade.

Enviar comentários

Agradecemos muito os comentários sobre problemas com nossa plataforma de conectores ou novas ideias de recursos. Para fornecer comentários, acesseEnviar problemas ou obter ajuda com conectores e selecione o tipo de comentário.