スキャフォールディングリファレンス

REST スキャフォルダー用 APIkit を使用して、RESTful API Modeling Language (RAML) または OpenAPI 仕様 (OAS) に基づいて REST API 実装のバックボーンを生成します。

API スキャフォールディング

Studio では、API をスキャフォールディングするいくつかの方法が提供されています。

  • Exchange または Maven からパブリッシュされた API をインポートする場合、ローカルファイルからインポートする場合、または Design Center からダウンロードする場合、​[New Mule Project (新規 Mule プロジェクト)]​ ウィザードで ​[Scaffold Flows From These API Specifications (これらの API 仕様からフローをスキャフォールディングする)]​ を選択する。

  • Package Explorer​ で API ファイルを右クリックし、​[Mule]​ > ​[Generate flows from Local REST API (ローカル REST API からフローを生成)]​ を選択する。

  • Package Explorer​ で API 連動関係を右クリックし、そのコンテキストメニューから ​[Generate flows (フローを生成)]​ を選択する。

ローカルファイルからのスキャフォールディングは、OAS ではサポートされていません。スキャフォールディング OAS API は、Exchange でパブリッシュされたアセットでのみ使用できます。

実装リファレンス

REST API 仕様をスキャフォールディングする場合、APIkit では次の内容が生成されます。

  • エントリポイントとして機能するメインフローには次の内容が含まれます。

    • ソースとしての HTTP リスナー

    • メイン操作としての APIkit ルーター

      APIkit ルーター は、受信した API 要求から対応する Mule フローにメッセージを送り、デフォルト値を使用してシリアル化された応答を生成するメッセージプロセッサーです。たとえば、無効な要求では、APIkit は​「bad request (不正な要求)」​応答を生成し、要求された API リソース内に関連付けられたフローがない場合は​「not implemented (実装されていません)」​応答になります。

      APIkit ルーターは要求のペイロード、ヘッダー、クエリパラメーター、URI パラメーターなどの要素を検証しますが、API 仕様で指定されているすべての要素を検証するわけではありません。具体的には、ルーターは認証の適用などのセキュリティ関連の検証を実行しません。代わりに、API ゲートウェイポリシーでこの検証が行われます。この検証は、要求がルーターに到達する前に行われます。

    • Error Handler

  • API Console を公開する 2 つ目のフローには次のコンポーネントが含まれます。

    • ソースとしての HTTP リスナー

    • メイン操作としての APIkit コンソール

    • Error Handler

  • N 個のフロー (API action-resource-content-type の組み合わせごとに 1 つ) に加えて、各フローには次の内容が含まれます。

    • No source (ソースなし) (このオプションは REST および SOAP アプリケーションの APIkit でのみ使用可能です)

    • 後で実際のビジネスロジックに置き換えるモック実装