作者:奶牛还在Henry | 来源:互联网 | 2022-10-12 21:23
我具有以下DW 2.0函数,用于修剪JSON有效负载中任何字符串值上的空格:
fun whiteSpaceTrimmer(item) = item match {
case is Array -> $ map whiteSpaceTrimmer($)
case is Object -> $ mapObject {
($$): $ match {
case is String -> trim($)
case is Object -> whiteSpaceTrimmer($)
case is Array -> $ map whiteSpaceTrimmer($)
else -> $
}
}
case is String -> trim($)
else -> $
}
由于它是递归的,因此我不确定在抛出异常之前它可以处理多深的嵌套结构。我可以传递给此函数的嵌套元素数量有限制吗?如果是这样,有没有更好的方法?
1> machaval..:
嗨,当前的MaxExecutionStack是256。因此,这意味着您的数据结构在引发StackOverflow之前可以具有多达255个嵌套级别。如果此数字对您来说不够用,则有一个名为“系统属性”的系统属性com.mulesoft.dw.stacksize
,可让您更改此值。