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

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

author
Talend Documentation Team
EnrichVersion
Cloud
EnrichProdName
Talend Cloud
task
ジョブデザインと開発
EnrichPlatform
Talend Management Console
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]テーブル、および[Documentation] (ドキュメンテーション)タブには、関連するパラメーターがすべて自動的に入力されます。これらのプロパティは必要に応じて更新できます。

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

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

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

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

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

削除済みのAPIメタデータを参照するtRESTRequestを使用してジョブを開くときに、[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定義で初期化されます。