Flex Gateway新着情報
Governance新着情報
Monitoring API Managerオブジェクト内のキー-値ペアのリストを反復処理し、一致するオブジェクトのみを返す式を適用することで、残りを出力から除外します。
式は true
または false
を返す必要があります。オブジェクトのキー、値、またはインデックスに対して式が true
を返した場合、そのオブジェクトは出力に取得されます。これらのいずれかに対して式が false
を返した場合、そのオブジェクトは出力から除外されます。一致する値がない場合、出力配列は空になります。
名前 | 説明 |
---|---|
|
評価するソースオブジェクト。 |
|
オブジェクトの |
次の例では、オブジェクトの値が "apple"
と等しい場合にそのオブジェクトを出力します。
%dw 2.0
output application/json
---
{"a" : "apple", "b" : "banana"} filterObject ((value) -> value == "apple")
DataWeave
{ "a": "apple" }
JSON
次の例では、キーが「letter」で開始するオブジェクトのみを出力します。DataWeave startsWith
関数は true
または false
を返します。キーの代わりに匿名パラメーターを使用して式を記述することができます (((value, key) → key startsWith "letter")
: ($$ startsWith "letter")`)。
%dw 2.0
output application/json
---
{"letter1": "a", "letter2": "b", "id": 1} filterObject ((value, key) -> key startsWith "letter")
DataWeave
{ "letter1": "a", "letter2": "b" }
JSON
次の例では、インデックスが 1 未満の、配列内のオブジェクトのみを出力します。1 番目のオブジェクトは常にこれに該当します。インデックスの代わりに匿名パラメーターを使用して式を記述することができます (((value, key, index) → index < 1)
: ($$$ < 1)
)。
%dw 2.0
output application/json
---
{ "1": "a", "2": "b", "3": "c"} filterObject ((value, key, index) -> index < 1)
DataWeave
{ "1": "a" }
json
次の例では、入力 JSON オブジェクト内の null
以外の値のみを含むオブジェクトを出力します。
%dw 2.0
output application/json
var myObject = {
str1 : "String 1",
str2 : "String 2",
str3 : null,
str4 : "String 4",
}
---
myObject filterObject $ != null
DataWeave
{
"str1": "String 1",
"str2": "String 2",
"str4": "String 4"
}
json
filterObject
を null
値に使用できるようにするヘルパー関数。