テスト接続の実装

テスト接続は、Azure Logic Apps、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 など) です。 テスト接続操作で、コントラクトは、コネクタが認証コンテキストと接続パラメーターを検証するように要求します。

これを行うには、バックエンドで何かシンプルなものに対してクエリを実行します。これにより、認証パラメーターと、暗黙的に示される可能性のあるデータベースまたはスコープが使用されます。 単純なテーブルの一番上の行を検索することは、テスト接続のアプローチの好例です。

フィードバックを提供する

コネクタ プラットフォームの問題点や新機能のアイデアなどのフィードバックをお待ちしています。 フィードバックを提供するには、「問題を送信するか、コネクタに関するヘルプを入手する」にアクセスし、フィードバックの種類を選択します。