在 Orion Context Broker 中按属性值过滤不起作用

Filter by attribute value in Orion Context Broker does not work

我不明白为什么,但在某些情况下过滤器不起作用。 下面是我的例子:

/v2/entities?type=carparks&q=name==Parking+Tina+Balice+Krakow&options=keyValues

returns:

[
  {
    "id": "15217701",
    "type": "carparks",
    "agglomerations": "1",
    "name": "Parking Tina Balice Krakow"
  }
]

上面的示例工作正常,但第二个查询不工作:

/v2/entities?type=carparks&q=agglomerations==1

此查询returns空字符串。

如何过滤掉这个条件:

type = carparks and agglomerations==1

对于这个对象?

猎户座:

version": "1.2.0"

URL 查询中的空格需要使用 +%20 正确编码。看看to this document.

所以,试试这个方法

/v2/entities?type=carparks&q=name==Parking+Tina+Balice+Krakow&options=keyValues

或其他

/v2/entities?type=carparks&q=name==Parking%20Tina%20Balice%20Krakow&options=keyValues

编辑: 关于

/v2/entities?type=carparks&q=agglomerations==1

请注意,agglomerations 是一个字符串,而默认情况下等于过滤器搜索数字(当然,当要搜索的值是数字时)。因此,您有两个选择:

  1. 强制将值解释为字符串,使用单引号:

    /v2/entities?type=carparks&q=agglomerations=='1'
    
  2. Create/update 实体使用 agglomerations 的数值。这个选项可能更有意义,因为我知道聚集语义是数字性质的。