SOAP API を API Management にインポートする
適用対象: すべての API Management レベル
この記事では、SOAP API の標準 XML 表現である WSDL 仕様をインポートする方法について説明します。 また、API Management で API をテストする方法についても説明します。
この記事では、次の方法について説明します。
- SOAP API のインポート
- Azure Portal での API のテスト
Note
WSDL の API Management へのインポートは、特定の制限事項に従います。 wsdl:import
、xsd:import
、xsd:include
の各ディレクティブを含む WSDL ファイルはサポートされていません。 WSDL ファイル内のこれらの依存関係を解決およびマージするオープンソース ツールについては、この GitHub リポジトリを参照してください。
前提条件
API Management インスタンス。 本サービスをまだお持ちでない場合は、Azure API Management インスタンスの作成に関するクイックスタートを完了します。
Azure CLI
Azure Cloud Shell で Bash 環境を使用します。 詳細については、「Azure Cloud Shell の Bash のクイックスタート」を参照してください。
CLI リファレンス コマンドをローカルで実行する場合、Azure CLI をインストールします。 Windows または macOS で実行している場合は、Docker コンテナーで Azure CLI を実行することを検討してください。 詳細については、「Docker コンテナーで Azure CLI を実行する方法」を参照してください。
ローカル インストールを使用する場合は、az login コマンドを使用して Azure CLI にサインインします。 認証プロセスを完了するには、ターミナルに表示される手順に従います。 その他のサインイン オプションについては、Azure CLI でのサインインに関するページを参照してください。
初回使用時にインストールを求められたら、Azure CLI 拡張機能をインストールします。 拡張機能の詳細については、Azure CLI で拡張機能を使用する方法に関するページを参照してください。
az version を実行し、インストールされているバージョンおよび依存ライブラリを検索します。 最新バージョンにアップグレードするには、az upgrade を実行します。
Azure PowerShell
- Azure PowerShell をローカルで使用する場合は、次のようにします。
- Az PowerShell モジュールの最新バージョンをインストールします。
- Connect-AzAccount コマンドレットを使用して、Azure アカウントに接続します。
- Azure Cloud Shell を使用する場合は、次のようにします。
- 詳細については、Azure Cloud Shell の概要に関するページを参照してください。
- Azure PowerShell をローカルで使用する場合は、次のようにします。
バックエンド API をインポートする
Azure portal で、API Management インスタンスに移動します。
左側のメニューで、[API]>[+ API の追加] を選択します。
[Create from definition](定義から作成) で [WSDL] を選びます。
[WSDL 仕様] で、SOAP API の URL を入力するか、[ファイルの選択] をクリックしてローカルの WSDL ファイルを選びます。
[インポート方法] では [SOAP パススルー] が既定で選ばれています。 このように選んだ場合、API は SOAP として公開されまます。また API コンシューマーは SOAP 規則を使う必要があります。 API を "復元・改良" する場合は、SOAP API のインポートと REST への変換に関する記事の手順に従います。
次の API 設定は、SOAP API からの情報 ([表示名]、[名前]、[説明]) に基づいて自動的に入力されます。 操作には [表示名]、[名前]、[説明] が自動的に入力され、システムによって生成された [名前] を受け取ります。
他の API 設定を入力します。 値は、作成時に設定することも、後で [設定] タブに移動して構成することもできます。
API 設定の詳細については、「最初の API のインポートと発行」のチュートリアルを参照してください。
[作成] を選択します
ポータルでの新しい API のテスト
ポータルには、管理者が API の操作を表示およびテストするための便利な環境が用意されており、操作を直接呼び出すことができます。
前の手順で作成した API を選びます。
[テスト] タブを選びます。
操作を選択します。 ページに、クエリ パラメーターのフィールドとヘッダーのフィールドが表示されます。
注意
テスト コンソールでは、API Management によって Ocp-Apim-Subscription-Key ヘッダーが自動的に設定され、組み込みの オール アクセス サブスクリプションのサブスクリプション キーが構成されます。 このキーを使用すると、API Management インスタンス内のすべての API にアクセスできます。 必要に応じて、 HTTP 要求の横にある "目" のアイコンを選択して、 Ocp-Apim-Subscription-Key ヘッダーを表示します。
操作に応じて、クエリ パラメーター値、ヘッダー値、または要求本文を入力します。 [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 アクションを定義するには、次の手順に従います。
- ポータルで、前の手順で作成した API を選択します。
- [デザイン] タブで、[操作の追加] を選択します。
- 操作の [表示名] を入力します。
- [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 に追加されます。
Azure portal で Azure API Management インスタンスに移動します。
[概要] ページまたは左側のメニューから [API] を選択します。
別の API を追加する API の隣の [...] をクリックします。
ドロップダウン メニューから [インポート] を選択します。
API のインポート元のサービスを選択します。
関連トピック
- API のインポートの制限事項
- OpenAPI 仕様のインポート
- SOAP API のインポート
- SOAP API のインポートと REST への変換
- App Service API をインポートする
- コンテナー アプリ API をインポートする
- Websocket API のインポート
- GraphQL API のインポート
- GraphQL スキーマをインポートし、フィールド リゾルバーを設定する
- Azure 関数アプリをインポートする
- Azure ロジック アプリをインポートする
- Service Fabric サービスをインポートする
- Azure OpenAI API をインポートする
- OData API をインポートする
- SAP OData メタデータをインポートする
- gRPC API をインポートする
- API の編集