Flex Gateway新着情報
Governance新着情報
Monitoring API Managerアプリケーション開発ライフサイクル中に APIkit を使用して API 仕様から Mule REST API または SOAP API をビルドできます。 次のモデリング言語に基づいて API を開発します。
RAML (RESTful API Modeling Language)
WSDL (Web Service Description Language)
OData (APIkit OData 拡張を使用した OData 対応 API)
OAS (Open API 仕様)
Anypoint Studio で APIkit を使用し、RAML または WSDL 仕様ファイルのインポートに基づいて Mule フローの作成を自動化することで、API の設計と実装を簡略化できます。API を生成したら、API をテストするコールを実行した後、実装を最終処理できます。
また、APIkit は、Apache Maven を使用してアプリケーションをビルドするのに役立つほか、既存のアプリケーション用のフローを生成するための CLI ツールも提供します。ただし、このいずれかのタスクを実行する前に、APIkit の基本構造を学習し、APIkit プロジェクトを開始するときに Mule フローを生成するスキャフォールディング手法を理解する必要があります。
APIkit を使用する REST または SOAP Studio プロジェクトには、次の部分があります。
REST または SOAP インターフェース
メインフロー
バックエンドフロー
REST リソースとアクション間のリレーションは、リソースとアクションのペアリングと呼ばれます。このインターフェースは、REST サービスにより要求された内部データアセットを公開します。また、このインターフェースは API を定義し (データを含むまたはデータにアクセスするリソースを指定します)、外部データに対するアクション (GET、PUT など) を指定します。
WSDL ファイルで定義されたインターフェースでは、多くのサービスが公開されます。各サービスには一連の操作が含まれます。基盤となるデータ種別は、WSDL ファイル内のスキーマまたはインポートされた XSD ファイルで定義された XML です。
API のメインフローでは、次の機能が管理されます。
HTTP 用 Anypoint Connector (HTTP Connector) を使用して API を公開する。
HTTP 要求に基づいてインターフェースとバックエンドフロー間で要求を転送する。
要求を受け入れて、応答を送信し、インターフェースと API プロセス間の通信を促進する。
メインフローは HTTP Listener コンポーネントと APIkit (REST または SOAP) Router コンポーネントで構成されます。APIkit Router は、提供された定義に対して要求を検証し、メッセージを強化し (メッセージにデフォルト値を追加するなど)、要求をフローに転送する主要なメッセージプロセッサーです。また、ユーザー要求の転送中、検証中、または処理中にエラーが発生した場合、ルーターはエラーメッセージを出力します。
Studio で新しい APIkit プロジェクトを開始するときに、API 定義ファイルをインポートするオプションがあります。ファイルをインポートすると、APIkit スキャフォールディングメカニズムによって API のさまざまなフローが生成されます。Anypoint Studio で APIkit プロジェクトを開始する方法は 3 つあります。
既存の RAML または WSDL ファイルをインポートするか、ファイルの URL を参照してプロジェクトを開始する場合、次の方法を使用します。
[File (ファイル)] > [New (新規)] > [Mule Project (Mule プロジェクト)] を選択します。
[Project Name (プロジェクト名)] に、プロジェクトの名前 (「myproject」など) を入力します。
デフォルトの EE ランタイム (Mule Server 4.2.0 EE など) を選択するか受け入れます。
[API Implementation (API 実装)] で、[Specify API Definition File Location or URL (API 定義ファイルの場所または URL を指定)] を選択します。
[Location (場所)] で、次のいずれかを実行します。
Design Center で api.raml
ファイルを作成している場合は、[Design Center] を選択します。必要に応じて Anypoint Platform にログインし、api.raml
を選択します。
Design Center で RAML ファイルを作成していない場合は、[Browse Files (ファイルを参照)] を選択し、テキストエディターで作成した RAML または WSDL ファイルを選択します。WSDL ファイルの場合、ドロップダウンメニューからサービスとポートを選択するか、デフォルトを受け入れます。
[Location (場所)] のデフォルトオプションを受け入れて、[Finish (完了)] をクリックします。
この方法を使用すると、APIkit スキャフォールディング手法によって以下が生成されます。
基本設定ファイルおよび Mule XML 設定ファイルを含むアーキタイプ
API の実装
RAML ベースの API の場合、RAML ファイルは src/main/resources/api
フォルダーの下に表示されます。API の実装には以下が含まれます。
HTTP Listener を含むメインフロー
APIkit Router コンポーネント
エラーハンドラー
RAML の連動関係 (Studio などの特定の場所から Design Center などの別の場所に変更をプッシュまたはプルします)
REST のリソースとアクションのマッピングを含むバックエンドフロー
WSDL ベースの API の場合、WSDL ファイルは src/main/resources/api
フォルダーの下に表示されます。API の実装には以下が含まれます。
SOAP Router
SOAP エラー応答テンプレート
SOAP メッセージテンプレートを含むバックエンドフロー
次の図は APIkit スキャフォールディングを示しています。
Studio では、REST API APIkit プロジェクトは次のようになります。
この図で示されている 5 つの項目は次を示しています。
Studio の Package Explorer に含まれるプロジェクトファイル。api.raml
ファイルは src/main/resources/api
フォルダーの下にあります。
APIkit Router を含むメインフロー。
APIkit Console
エラー処理
リソースメソッドごとに生成されたフロー。
生成された最小限のフローは、REST 契約で要求されるコミュニケーション操作を満たします。
Studio では、SOAP API APIkit プロジェクトは次のようになります。
この図で示されている 4 つの項目は次を示しています。
Studio の Package Explorer に含まれるプロジェクトファイル。example.wsdl
ファイルは src/main/resources/api
フォルダーの下にあります。
SOAP Router を含むメインフロー。
SOAP エラー応答テンプレート
SOAP メッセージテンプレートを含む、生成されたバックエンドフロー。
APIkit プロジェクトを作成したら、API をテストするコールを実行し、実装を最終処理することで、アプリケーションのビルドを続行することができます。詳細は、[Build Applications Workflows]を参照してください。
API 仕様ファイルなしで APIkit プロジェクトを開始し、後で API 仕様ファイルをプロジェクトに追加できる場合、この方法を使用します。APIkit は骨格 RAML ファイルと XML 設定ファイルを生成します。
[File (ファイル)] > [New (新規)] > [Mule Project (Mule プロジェクト)] を選択します。
[Project Name (プロジェクト名)] に、プロジェクトの名前 (「myproject」など) を入力します。
デフォルトの EE。ランタイム (Mule Server 4.2.0 EE など) を選択するか受け入れます。
[API Implementation (API 実装)] で、[Specify API Definition File Location or URL (API 定義ファイルの場所または URL を指定)] を選択しないでください。
これにより、バックエンドファーストの APIkit 設計が作成されます。
その他のデフォルトのオプションを受け入れて [Finish (完了)] をクリックします。
この方法を使用すると、APIkit スキャフォールディングによって、次のコンポーネントを含む骨格 RAML ファイルおよび XML 設定ファイルが生成されます。
メインフロー <flow name="main-api"></flow>
メインフローの HTTP Listener 設定
APIkit Router コンポーネント
エラーハンドラー
後で API 仕様をバックエンドファーストの APIkit 設計に追加し、バックエンドフローを生成して、アプリケーションのビルドを続行できます。詳細は、[Build Applications Workflows]を参照してください。
このタスクを実行するには、次の前提条件を満たしている必要があります。
Studio (RAML エディター) で RAML ファイルを作成した
HTTP Listener および APIkit Router コンポーネントを含むメインフローを作成した
Studio で RAML ファイルを作成するときに、バックエンドフローの生成は省略可能です。RAML ベースの API ではエラー処理が自動的に生成されます。APIkit プロジェクトを開始するには、バックエンドフローをメインフローから生成する必要があります。次の手順に従います。
Package Explorer で、プロジェクト名を右クリックします。
[Mule] > [Generate Flows From REST API (REST API からフローを生成)] を選択します。
APIkit スキャフォールディング手法によってバックエンドフローがメインフローの後に生成されます。次に、API をテストするコールを実行し、実装を最終処理することで、アプリケーションのビルドを続行することができます。詳細は、[Build Applications Workflows]を参照してください。
APIkit の基本構造とスキャフォールディング手法を理解したら、次のワークフローを参考にして、APIkit プロジェクトの作成、Mule フローの生成、API へのコールの実行、および実装の最終処理を行って、目的のアプリケーションをビルドします。
さらに次のことができます。
既存の Mule プロジェクトの APIkit プロジェクトへの変換
既存の APIkit バックエンドファーストの設計への API 仕様の追加、API 定義ファイルの定義、メインフローの作成、バックエンド REST API フローの生成、アクションへの RAML リソースのマップを行います。
APIkit プロジェクトの変更、API コンソールのカスタマイズ、ヘッダーの設定、RAML ファイルの取得、機能以外の要件の実行、ロードバランサーの設定を行います。
APIkit OData 拡張を使用した OData 対応 API の作成
OData 要求を処理する Mule フローを生成します。
既存の Apache Maven プロジェクトに APIkit コンポーネントを追加します。
アプリケーションをビルドしたら、API からのデータのコンシュームを開始できます。ガイドラインについては、「API からのデータのコンシューム」のドキュメントを参照してください。