次の方法で共有


SOAP API を API Management にインポートする

適用対象: すべての API Management レベル

この記事では、SOAP API の標準 XML 表現である WSDL 仕様をインポートする方法について説明します。 また、API Management で API をテストする方法についても説明します。

この記事では、次の方法について説明します。

  • SOAP API のインポート
  • Azure Portal での API のテスト

Note

WSDL の API Management へのインポートは、特定の制限事項に従います。 wsdl:importxsd:importxsd:include の各ディレクティブを含む WSDL ファイルはサポートされていません。 WSDL ファイル内のこれらの依存関係を解決およびマージするオープンソース ツールについては、この GitHub リポジトリを参照してください。

前提条件

バックエンド API をインポートする

  1. Azure portal で、API Management インスタンスに移動します。

  2. 左側のメニューで、[API]>[+ API の追加] を選択します。

  3. [Create from definition](定義から作成)[WSDL] を選びます。

    SOAP API

  4. [WSDL 仕様] で、SOAP API の URL を入力するか、[ファイルの選択] をクリックしてローカルの WSDL ファイルを選びます。

  5. [インポート方法] では [SOAP パススルー] が既定で選ばれています。 このように選んだ場合、API は SOAP として公開されまます。また API コンシューマーは SOAP 規則を使う必要があります。 API を "復元・改良" する場合は、SOAP API のインポートと REST への変換に関する記事の手順に従います。

    WSDL 仕様から SOAP API を作成する

  6. 次の API 設定は、SOAP API からの情報 ([表示名][名前][説明]) に基づいて自動的に入力されます。 操作には [表示名][名前][説明] が自動的に入力され、システムによって生成された [名前] を受け取ります。

  7. 他の API 設定を入力します。 値は、作成時に設定することも、後で [設定] タブに移動して構成することもできます。

    API 設定の詳細については、「最初の API のインポートと発行」のチュートリアルを参照してください。

  8. [作成] を選択します

ポータルでの新しい API のテスト

ポータルには、管理者が API の操作を表示およびテストするための便利な環境が用意されており、操作を直接呼び出すことができます。

  1. 前の手順で作成した API を選びます。

  2. [テスト] タブを選びます。

  3. 操作を選択します。 ページに、クエリ パラメーターのフィールドとヘッダーのフィールドが表示されます。

    注意

    テスト コンソールでは、API Management によって Ocp-Apim-Subscription-Key ヘッダーが自動的に設定され、組み込みの オール アクセス サブスクリプションのサブスクリプション キーが構成されます。 このキーを使用すると、API Management インスタンス内のすべての API にアクセスできます。 必要に応じて、 HTTP 要求の横にある "目" のアイコンを選択して、 Ocp-Apim-Subscription-Key ヘッダーを表示します。

  4. 操作に応じて、クエリ パラメーター値、ヘッダー値、または要求本文を入力します。 [Send] を選択します。

    テストが成功すると、バックエンドは成功した HTTP 応答コードと一部のデータで応答します。

    ヒント

    既定では、テスト コンソールから API Management の CORS プロキシに要求が送信され、要求が API Management インスタンスに転送され、バックエンドに転送されます。 このプロキシはパブリック IP アドレス 13.91.254.72 を使用し、パブリック エンドポイントにのみ到達できます。 ブラウザーから API Management サービスに直接要求を送信する場合は、[CORS プロキシのバイパス] を選択します。 このオプションは、テスト コンソールを使用する場合に、API Management ゲートウェイがネットワーク分離されているか、CORS プロキシからのトラフィックを許可しない場合に使用します。

API をデバッグするには、「チュートリアル: 要求トレースを使用して API をデバッグする」をご覧ください。

ワイルドカード SOAP アクション

API で専用のアクションが定義されていない SOAP 要求を渡す必要がある場合は、ワイルドカード SOAP アクションを構成できます。 ワイルドカード アクションは、API で定義されていない SOAP 要求と一致します。

ワイルドカード SOAP アクションを定義するには、次の手順に従います。

  1. ポータルで、前の手順で作成した API を選択します。
  2. [デザイン] タブで、[操作の追加] を選択します。
  3. 操作の [表示名] を入力します。
  4. [URL] で、POST を選択し、リソースに「/?soapAction={any}」と入力します。 中かっこ内のテンプレート パラメーターは任意であり、実行には影響しません。

Note

SOAP API を変更するためには、[デザイン] タブの OpenAPI 仕様エディターを使用しないでください。

その他の API の追加

次のように、各種サービスで公開される API を構成できます。

  • OpenAPI の仕様
  • SOAP API
  • GraphQL API
  • Azure App Service でホストされる Web アプリ
  • Azure Function App
  • Azure Logic Apps
  • Azure Service Fabric

次の手順に従って、既存の API に別の API を追加します。

Note

別の API をインポートすると、操作が現在の API に追加されます。

  1. Azure portal で Azure API Management インスタンスに移動します。

    ポータルでの API Management インスタンスへの移動のスクリーンショット。

  2. [概要] ページまたは左側のメニューから [API] を選択します。

    ポータルの [概要] ページで API を選択しているスクリーンショット。

  3. 別の API を追加する API の隣の [...] をクリックします。

  4. ドロップダウン メニューから [インポート] を選択します。

    [インポート] を選択する

  5. API のインポート元のサービスを選択します。

    ポータルでサービスを選択しているスクリーンショット。

次のステップ