NiFi 在处理器之间传输数据
NiFi transfering data between processors
我想创建一个简单的流程。首先,我需要从 REST 服务中获取 accountIds,然后使用接收到的值创建新的 HTTP 请求以获取令牌,然后使用此令牌通过 Oauth2 创建一些请求。
AccountIds 流程:
来自 InvokeHttp
我会在 json 中收到一些 ID(REST 写在 Java 和 returns List with Integers 中)。 99% 的可能性只有一个数字。我的回复看起来像:[40]
。现在我需要替换方括号并得到这个数字(使用 SplitJson
)。这个数字我应该放在下一个 getToken
作为 GET 参数之一(在屏幕截图上我硬编码):
这将 return 一个令牌。 Token是一个text/plain;charset=UTF-8
。然后,我想再次使用 InvokeHttp
,添加属性 Authorization
并添加到此属性 Bearer + received token
。我真的不明白如何在以下处理器中使用从处理器接收到的数据。有人可以解释一下如何通过我的流程到达它吗?
其余 Api 为您提供有效载荷主体 - 在 nifi 术语中 flowfile content
,您需要使用 evaluatejson
解析传入内容(如果有效载荷是 json - 在大多数情况下)并将其存储在 flow attributes
中。
然后这个属性将在下游处理器中使用。
另外,要将 Authorization
传递给您的 InvokeHTTP,您需要在 InvokeHTTP
处理器中对其进行 decalre。 ${access_token}
来自上游属性提取。
我想创建一个简单的流程。首先,我需要从 REST 服务中获取 accountIds,然后使用接收到的值创建新的 HTTP 请求以获取令牌,然后使用此令牌通过 Oauth2 创建一些请求。
AccountIds 流程:
来自 InvokeHttp
我会在 json 中收到一些 ID(REST 写在 Java 和 returns List with Integers 中)。 99% 的可能性只有一个数字。我的回复看起来像:[40]
。现在我需要替换方括号并得到这个数字(使用 SplitJson
)。这个数字我应该放在下一个 getToken
作为 GET 参数之一(在屏幕截图上我硬编码):
这将 return 一个令牌。 Token是一个text/plain;charset=UTF-8
。然后,我想再次使用 InvokeHttp
,添加属性 Authorization
并添加到此属性 Bearer + received token
。我真的不明白如何在以下处理器中使用从处理器接收到的数据。有人可以解释一下如何通过我的流程到达它吗?
其余 Api 为您提供有效载荷主体 - 在 nifi 术语中 flowfile content
,您需要使用 evaluatejson
解析传入内容(如果有效载荷是 json - 在大多数情况下)并将其存储在 flow attributes
中。
然后这个属性将在下游处理器中使用。
另外,要将 Authorization
传递给您的 InvokeHTTP,您需要在 InvokeHTTP
处理器中对其进行 decalre。 ${access_token}
来自上游属性提取。