mule - 使用 Mule 4 中所需的任一字段验证 json 数组
问题描述
请求 Json 如下所示:-
{
"eNumber": 8506493,
"details": [
{
"id":12345,
"name": xyz123
}
]
}
作为要求的一部分,我需要检查“id”或“name”字段必须存在的“details”数组。如果存在“id”字段,则“name”是非强制性的。如果存在“name”字段,则“id”是非强制性的。如果不满足则抛出错误。
我尝试了几个选项,使用过滤详细信息数组并检查验证组件中过滤数组的大小。它似乎运行得不好。如果有人有更好的解决方案。请在这里分享。
解决方案
如果通过您的条件,此示例代码将返回 true 或 false
%dw 2.0
import * from dw::core::Arrays
output application/json
---
payload.details every ((item) -> item.id? or item.name?)
我正在使用的函数是检查数组中的所有元素是否都通过给定条件的函数。
稍后您可以使用一个选项并使用raise 错误 ,或者您可以使用带有 if else的fail dw 函数。
推荐阅读
- json - 到 JSON 的 T-SQL 输出未按预期工作
- web - 创建具有以下功能的网站:
- java - Rocker 模板是否支持 Java 11
- typescript - 强键入 Twitter 小部件以摆脱成员访问错误
- python - 使用 RegEx 修改文本文件后,如何下载新修改的文件?
- django - 带有多个 ForeignKey 引用的 Django 注释问题
- html - CSS Flexbox 纵横比
- assembly - 如何从给定的 x86-64 程序集中找到被调用者保存的寄存器和调用者保存的寄存器?
- python - 为什么迭代过去 -6 后 -50 到 50 的边缘情况不起作用?从排序的linkedList中删除重复项
- flutter - 如何下拉屏幕以显示颤动的搜索栏?