ジョブおよびルートとともにRESTメタデータを使用する - 7.1

Talend Real-time Big Data Platform Studioユーザーガイド

author
Talend Documentation Team
EnrichVersion
7.1
EnrichProdName
Talend Real-Time Big Data Platform
task
ジョブデザインと開発
EnrichPlatform
Talend Studio

REST APIメタデータが作成されたら、tRESTRequestコンポーネントでジョブに、cRESTでルートに使用することができます。

tRESTRequestコンポーネントの[Basic settings] (基本設定)ビューで、[Definition] (定義)リストから[Repository] (リポジトリ)を選択します。

[Definition] (定義)フィールドのとなりの[...]をクリックして[Repository Content] (リポジトリーのコンテンツ)ウィザードを開くと、リポジトリー内に作成されたREST APIメタデータが表示されます。
tRESTRequestコンポーネントで使用するメタデータからAPI仕様を選択し、[OK]をクリックします。

APIをメタデータノードから新しく作成したジョブにドラッグ&ドロップするという別法もあります。この操作で、設定済みの新しいtRESTRequestコンポーネントが作成されます。

[REST Endpoint] (REST エンドポイント)フィールド、[REST API Mapping] (REST APIマッピング)テーブル、および[Documentation] (ドキュメンテーション)タブに、関連するパラメーターが全て自動的に入力されます。これらのプロパティは必要に応じて更新できます。

[REST Endpoint] (エンドポイント)フィールドには、スキーム、ホスト、ポートなしでURLが入力されます。たとえば、ソースURLがhttp://myhost:8090/v1の場合、"/v1"のみがエンドポイント用に保持されます。

[REST API Mapping] (REST APIマッピング)テーブルで、フィールド[HTTP Verb][URI Pattern] (URIパターン)[Consumes] (コンシューム)[Produces] (プロデュース)に、API仕様内の情報に基づいてそれぞれの値が入力されます。

[Output Flow](出力フロー)カラムには、インポート中に以下のルールが適用されます:
  • 仕様にOperationIDが存在する場合は、この値が[Output Flow] (出力フロー)カラムに使用されます。存在しない場合は、仕様内のサマリーフィールドが120文字までの制限付きで使用されます。空白はアンダースコアに置換されます。
  • 仕様にオペレーションIDもサマリーフィールドも存在しない場合、または空白以外のサポートされていない文字が含まれている場合、[Output Flow] (出力フロー)カラムは空のままとなり、手動で入力する必要があります。
tRESTRequestの場合のみ、スキーマを[Output Flow] (出力フロー)の一部としてインポートするときに、以下のルールが適用されます:
  • OAS 2プリミティブタイプとTalendスキーマタイプ(整数、文字列、その他)の間の静的マッピング
  • 以下のパラメータータイプがサポートされており、スキーマの[Comment] (コメント)フィールドに設定されます。
    • コメント値に対するパスパラメーター: パス
    • コメント値に対するクエリパラメーター: クエリ
    • コメント値へのヘッダーパラメーター: ヘッダー
  • 以下のパラメータータイプは、インポートの一部として[Comment] (コメント)フィールドに対してサポートされていませんが、サービスデザインで必要になった場合に後で手動で追加することができます。
    • フォームパラメーター
    • マトリクスパラメーター
    • Multipart
  • 仕様にパラメーターのデフォルト値が含まれている場合、これらのパラメーターのデフォルト値(ヘッダー、クエリ、パス)はスキーマの[Default] (デフォルト)カラム内に設定されます。
  • オブジェクト、配列、日付、時刻、および日時タイプのデータは、インポート中に文字列タイプのカラムに設定されます。これらのタイプは文字列にマッピングされるため、デフォルト値をインポートの一部として転送する処理はサポートされていません。
  • Null許容カラムはインポートされませんが、インポート中にデフォルト値に留まります。

APIデザイナー内、またはOAS 2.0仕様内で設定したセキュリティ情報は、tRESTRequestコンポーネントにインポートされません。ジョブ実装の一部としてTalend ESBによって提供されているセキュリティオプションから選択することができます。

tRESTRequestを使用し、リポジトリからAPIメタデータを参照してジョブを開くたびに、Studioはリンクされているメタデータコンテンツに従い、更新が必要かどうかをテストします。リポジトリのAPIメタデータが更新されたら、tRESTRequestパラメーターの更新に対する確認を求める以下のプロンプトメッセージが表示されます。エンドポイントの既存の値を保つかどうかを選択できます。

tRESTRequestを使用し、削除済みのAPIメタデータを参照してジョブを開くときには、[Built-In] (組み込み)モードに切り替えるように求められます。

cRESTコンポーネントは、API定義を使用して、ジョブでtRESTRequestを初期化するのと同じ方法で、ルートデザインでメタデータから初期化することができます。

データサービスとルートでコンポーネントtRESTRequestまたはcRESTのどちらかを使用していて、RESTコンポーネントの1つがAPIデザイナーからRESTメタデータを使用している場合、コンテキストメニューから以下のアクションを使用できます。

  • [Open in API Designer] (APIデザイナー内に開く): 外部のWebページを開き、APIデザイナー内にAPI定義を表示する。
  • [Open API documentation] (APIドキュメンテーションを開く): 外部のWebページを開き、APIのドキュメンテーションを表示する。このアクションでは、APIドキュメンテーションがTalend Cloud API Designerでパブリッシュされている必要があります。そうでないとドキュメンテーションは利用できず、このメニューオプションで表示することができません。
  • [Open in API Tester] (APIテスターで開く): Talend Cloud API TesterをローカルのChromeブラウザで開く。すでに存在しているプロジェクトがない場合、テストプロジェクトは現在のAPI定義で初期化されます。