4
我正在使用版本0.25.0的Orion上下文代理。Orion上下文代理 - 通過沒有元素的位置查詢
如果我只跟上下文實體加載上下文經紀人和我搜索實體進入特定區域,一切似乎都很好地工作:
(curl localhost:1026/v1/queryContext?limit=100 -s -S --header 'Content-Type: application/json' --header 'Accept: application/json' -d @- | python -mjson.tool) <<EOF
{
"entities":[
{
"type":"Dispositivo_tmp",
"isPattern":"true",
"id":".*"
}
],
"restriction": {
"scopes": [
{
"type": "FIWARE::Location",
"value": {
"circle": {
"centerLatitude": "43.322361",
"centerLongitude": "-1.983222",
"radius": "1500"
}
}
}
]
}
}
EOF
我與位於進入該區域範圍內的實體的響應:
...
{
"contextElement": {
"attributes": [
{
"metadatas": [
{
"name": "location",
"type": "string",
"value": "WGS84"
}
],
"name": "position",
"type": "coords",
"value": "43.3221, -1.9831"
},
{
"name": "pressure",
"type": "integer",
"value": "1"
},
{
"name": "temperature",
"type": "float",
"value": "25"
}
],
"id": "CE_5.1",
"isPattern": "false",
"type": "Dispositivo_tmp"
},
"statusCode": {
"code": "200",
"reasonPhrase": "OK"
}
}
]
}
如果沒有元素融入定義的區域,我得到預期的響應:
{
"errorCode": {
"code": "404",
"reasonPhrase": "No context element found"
}
}
如果我也使用上下文註冊加載上下文代理,則會出現問題。如果我有上下文經紀人都上下文實體和上下文登記和我檢查上下文實體爲我所知道的是空白的領域,我不會得到任何迴應,否則我將獲得這一個:
{
"errorCode": {
"code": "200",
"reasonPhrase": "OK"
}
}
,似乎上下文代理中加載的上下文註冊量越大,從系統獲得(否定)響應的時間就越多。
在相同的情況下,如果我將上下文實體查找到包含元素的區域,則沒有問題。在這種情況下,我會得到正確的答覆。
對此有任何意義嗎?
感謝
我知道「編輯」下的部分是問題的實際答案。因此,我建議將它剪切並粘貼到下面的正確答案(StackOverflow允許自我回答的問題)。謝謝! – fgalan
此外,爲了清楚起見,請包含一個錯誤的URL和正確的一個示例。那太好了! – LeandroGuillen