Могу ли я заставить Orion Context Broker игнорировать дополнительные поля в полезной нагрузке JSON в запросе POST

мы хотим передать данные из Spark Core в Context Broker, используя обычный запрос POST (v1/updateContext). Мы генерируем следующую полезную нагрузку JSON:

{
"contextElements“:
    [
        {
            "type":"Producer“,
            "isPattern":"false“,
            "id":"1337“,
            "attributes“:
                [
                    {
                        "name":"currentPower“,
                        "type":"float“,
                        "value":“0"
                    },
                    {
                        "name":"timestamp“,
                        "type":"int“,
                        "value":"2015-07-07T20:32:36.958Z“
                    }
                ]
        }
    ],
"updateAction":“UPDATE"

}

Однако встроенное ПО автоматически добавляет дополнительные поля (помимо «contextElements» и «updateAction») в полезные данные JSON. Брокер контекста отвечает ошибкой, что будут неизвестные поля. Можем ли мы заставить Context Broker игнорировать эти дополнительные поля и выбирать только два обязательных?


person Jochen Leibrich    schedule 08.07.2015    source источник


Ответы (1)


Нет, ты не можешь. Это ожидаемый способ работы, точно так же вы не можете использовать больше аргументов, чем разрешено, при вызове функции в любых обычных языках программирования.

В качестве обходного пути вы можете использовать какой-либо промежуточный прокси-сервер для фильтрации фрагментов JSON, которые генерируются вашими встроенными устройствами и которые не соответствуют API NGSI, который реализует Orion.

person fgalan    schedule 08.07.2015