Skip to main content
JSON ドキュメントから値を取得します。

必要なパラメータ

  • map:*:1つ以上のインプットのセット。マッピングされるパラメータの名前がコロンの前に置かれ(例:map:foo)、値はドキュメント内の対象のjson 要素へのjsonpath です(詳細はを参照してください)。

オプションのパラメータ

  • uri:JSON ファイルのURI。インプットファイルに対する[FilePath] などの動的なファイル参照、ディスク上の静的なファイルパス、またはJSON ファイルのパブリックURL を指定できます。
  • text:JSON データへの読み取り可能なハンドル参照。このハンドルはjsonOpen オペレーションによって作成され、インプットJSON がファイルやrawテキストではない場合、またはドキュメントのファイルデータにアクセスする複数のアクションを実行する必要がある場合に役立ちます。
  • handle:JSON データへの読み取り可能なハンドル参照。このハンドルはjsonOpen オペレーションによって作成され、対象のJSON がインプットファイルではない場合にのみ必要です。詳細と例についてはjsonOpen を参照してください。
  • repeatelement#:ドキュメント内で繰り返される要素へのjsonpath。
  • repeatmoderepeatelement# の値をアウトプットアイテムに格納する方法を定義します。使用できる値はITEM およびARRAY です。ITEM(デフォルト)に設定すると、繰り返し要素から見つかった値は、オペレーションが生成する各アウトプットアイテムに個別の属性として格納されます。ARRAY に設定すると、繰り返し要素から見つかった値は単一のアウトプットアイテムに配列属性として格納され、1始まりのインデックスを介してアクセスする必要があります(例:[result.color#2] はresult アイテムのcolor 属性内の2番目の値を参照します)。

アウトプット属性

  • *:map パラメータを使用してマッピングされたJSON 要素からのアウトプット値。これらは、アウトプットアイテムとマッピングされたインプットアイテムの名前を参照してアクセスします(例:[results.foo])。アウトプットアイテムの名前(この場合はresults)はユーザーが決定します。追加のコンテキストについてはを参照してください。

JSON ドキュメントから値を取得する

次のJSON データについて考えてみます。これはScript コネクタへのインプットデータとして渡されます:
Script コネクタでは、Script でjsonDOMGet を呼び出して、このデータで定義された人物のname およびage を取得し、それらを のメッセージのヘッダーとして追加できます。次のScript コードは、その方法の例を示しています:
このコードが実行されると、 は新しく追加されたヘッダーを持つファイルをアウトプットとしてフローの下流に送ります。

JSON オブジェクト内の配列の特定のインデックスにアクセスする

JSON データ内の配列の特定のインデックスにアクセスする必要がよくあります。例えば、Script コネクタへのインプットファイルとして渡される次のJSON オブジェクト内で、orders 配列の2番目のorder オブジェクトのid にアクセスしたい場合があります。
Script コネクタでは、Script でjsonDOMGet を呼び出し、orders 配列内のいずれかのオブジェクトに存在する要素への1始まりのインデックスjsonpath を使用して、特定のorder のid にアクセスできます。次のScript コードは、その方法の例を示しています:

repeatelement パラメータを使用する

次のJSON データについて考えてみます。これはScript コネクタへのインプットファイルとして渡されます:
Script コネクタ内で、次のコードがインプットファイルに対して実行されます。repeatelement# パラメータは、繰り返しの値を持つ要素を定義するために使用されます。この例では、color およびexample の値は、JSON 配列である/json/colors 要素内で繰り返されています。repeatelement# を設定すると、jsonDOMGet オペレーションはその要素に存在する値をループします。 repeatmode パラメータは、repeatelement# の値をアウトプットとして格納する方法を定義します。ITEM(デフォルト)に設定すると、繰り返し要素によって見つかった値は、アウトプットアイテムに個別の属性として格納されます。ARRAY に設定すると、繰り返し要素によって見つかった値は、アウトプットアイテムに配列属性として格納され、1始まりのインデックスを介してアクセスする必要があります(例:[result.color#2]red に解決され、result.example#2apple に解決されます)。
アウトプットファイル: