NiFi, как получить ответ splitjson (каждая запись) после вызова REST API - PullRequest
0 голосов
/ 08 июля 2019

У меня есть приведенная ниже последовательность для вызова rest API.

процессор invokehttp -> разделить JSON ---> процессор jsonpath -> процессор замены текста (для создания данных после записи) ---> InvokeHTTP--> Процессор XPATH для атрибута ---> исходный файл потока, который генерируется splitjson после вызова процессора http и создания полезной нагрузки ---> mqtt.

Здесь я вызываю API остальных и после разделения большогоjson, я использую замену текста для вызова другого API (POST-запроса), который использует атрибуты из исходной полезной нагрузки процессора первого вызова.

После того, как будет создан ответ второго вызова http, используя атрибуты выражения xpath, янужно получить разделенный ответ, созданный split json после вызова http-процессора, чтобы создать новый запрос для отправки в mqtt.enter image description here Итак, как мне получить отдельные записи, полученные после разделения

1 Ответ

2 голосов
/ 08 июля 2019

Похоже, вы пытаетесь обогатить исходную запись JSON значениями второго HTTP-вызова. Если это так, рассмотрите возможность использования LookupRecord с RestLookupService. Это может облегчить необходимость ReplaceText -> InvokeHTTP -> EvaluateXPath. Если это делает не все, что вам нужно, и вам удобно работать с языками сценариев, такими как Groovy, Jython или Javascript, вы можете написать свой собственный ScriptedReader, чтобы выполнить второй вызов и извлечь все необходимые значения.

...