【问题标题】:Check if an array contains a value Query in Cumulocity REST API检查数组是否包含在 Cumulocity REST API 中的值查询
【发布时间】:2020-09-02 01:06:31
【问题描述】:

我有一个带有片段“A”的“ABC”类型的托管对象,其子结构如下:

{
    "type": "ABC",
    "A": {
        "value": ["B", "C"]
    }
}

如何创建一个过滤器/查询来检查“A”片段是否在“value”数组中包含“C”?

该查询失败:

{{url}}/inventory/managedObjects?query=$filter=(type+eq+'ABC'+and+A.value+has+‘C‘)

{
    "error": "inventory/Invalid Data",
    "message": "Find by filter query failed : Query '$filter=(type eq 'ABC' and A.value has ‘C‘)' could not be understood. Please try again.",
    "info": "https://www.cumulocity.com/guides/reference-guide/#error_reporting"
}

Cumulocity doc 关于查询 REST API。

解决方案: 使用 eq 而不是 has:

{{url}}/inventory/managedObjects?query=$filter=(type+eq+'ABC'+and+A.value+eq+‘C‘)

【问题讨论】:

    标签: cumulocity


    【解决方案1】:

    我找不到来源,但以下内容对我来说是预期的结果:

    {{url}}/inventory/managedObjects?query=$filter=(type+eq+'ABC'+and+A.value+eq+'C')
    

    所以基本上你需要为你的用例使用 eq 运算符。

    【讨论】:

      猜你喜欢
      • 2019-08-10
      • 2015-01-01
      • 2021-07-15
      • 1970-01-01
      • 2015-05-25
      • 2021-08-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多