实现测试连接

测试连接是一种简单的入口点,您可以为用于 Azure 逻辑应用、Power Automate 或 Power Apps 的连接器定义这种入口点。 通过公开用于测试连接的操作,连接器可以为连接参数提供设计时和运行时验证。

先决条件

添加新的测试连接操作

添加 TestConnection 操作是一个非常简单的过程。 可以选择使用任何现有操作作为测试连接的方法,也可以选择添加其作业仅用于测试连接参数的特定操作。 操作必须是“get”,并支持不带任何参数或带有硬编码参数的调用。

在 OpenAPI 规范中,添加用于此用途的新操作的过程可能类似如下:

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

重要

注意,此操作标记为 internal。 如果添加用于此用途的新入口点,强烈建议通过标记可见性来向用户隐藏此操作。

必须通过将扩展添加到顶级 API 来标识要用作测试连接的终结点,如下所示:

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

此属性中指定的 operationId 必须存在于同一 OpenAPI 规范中才有效。

重复使用现有的测试连接操作

通常这是一种更简单、更易于管理的方法,可用于识别既能验证连接的可行性,又不会产生太多费用或延迟的现有操作。 此过程可以在不添加新操作的情况下完成,只需指示要使用哪个操作以及要传递哪些参数(如有)。

以下示例使用名为 GetTables 的现有“get”操作,如果连接有效并且参数正确,此操作应该可以成功。 为了确保测试连接操作尽快执行,此示例还向调用添加了一个参数,指定只应返回第一行。

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

实施测试连接

如需实现测试连接,并且没有适合此用途的其他现有操作,则可以通过简单的后端调用来实现。 此操作不需要使用任何参数或返回任何内容。 URL 路径也不重要,你可以根据自己的喜好选择。 要判断测试连接调用是否成功,查看 HTTP 调用是否返回成功响应(例如 200)。 在测试连接操作中,合同要求连接器验证身份验证上下文和连接参数。

为此,可以在后端查询一些简单的内容,查询时将用到身份验证参数和可能隐含的任何数据库或范围。 查询简单表的顶行便是一种很好的测试连接方法。

提供反馈

我们非常感谢大家提出有关连接器平台问题或新功能想法的反馈。 要提供反馈,请转到提交问题或获取连接器帮助,然后选择反馈类型。