在发布有关 Apache NiFi InvokeHTTP 的问题之前,我已经浏览了所有其他问题及其答案,但我仍然不确定我应该拥有的最佳流程。我的情况如下:
1)从 Apache Kafka,我获取原始元数据。
2)使用EvaluateJSONPath我得到了我想要的属性。
3) 使用 RouteOnAttribute,我根据上面第 2 步中获得的属性值创建了 3 条路由。
4) 现在,根据属性值,我想决定是否应该进行 GET、POST 或删除。
5)我的问题是在哪里/如何设置POST消息?获取消息?删除邮件正文?
6) 我可以在 InvokeHTTP 提供的配置部分中设置 URL。但消息体我不知道那个属性是什么?或者它在流文件中使用 ReplaceText?
我在某处读到,在将 Restful POST HTTP 请求转移到 InvokeHTTP 之前,您必须有另一个处理器,然后才能更改流文件的内容。
Ref: 配置来自 Nifi 的 HTTP POST 请求 https://stackoverflow.com/questions/39116067/configuring-http-post-request-from-nifi
请帮忙。谢谢。
问候,
耶什旺特
添加 Bryan 所解释的内容,POST 将使用 FlowFile 内容作为消息正文,因此,如果您有一些其他数据想要擦除/转换为某种内容,然后作为消息正文发送,您可以利用以下处理器:
-
ExtractText
从现有的 FlowFile 内容中读取数据
-
ReplaceText
擦除 FlowFile 的现有内容并将其替换为不同的内容
要设置 REST 调用的标头,InvokeHTTP
有财产Attributes to Send
property,它采用正则表达式,该正则表达式将扫描传入的 FlowFiles 的属性,并且匹配的属性将被获取并作为 HTTP 标头发送。
要向现有 FlowFile 添加新属性,您可以使用UpdateAttribute
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)