我试图将一行XML文件的整个内容插入到JSON属性中(我是新手).
我这样做(告诉我是否有更简单的方法,现在好):
我已经通过这种方式配置了Extract文本:
为了完成,我配置替换文本,给出一个JSON格式:
但是他的结果似乎是错误的(不像普通的JSON文件那样工作,例如,如果我尝试做一个httpPost):
我该如何解决这个问题?
干杯
如果您关心new lines并在提取的属性()上json key/values使用NiFi表达式语言函数data.
ReplaceText配置:
{"name" : "user1","time" : "${now()}","data" : "${data:replaceAll('\s',''):escapeJson()}"}
Run Code Online (Sandbox Code Playgroud)
使用escapeJson和replaceAll函数将替换''
策略替换为所有空格和换行符Always Replace
(要么)
准备json消息的另一种方法是使用AttributesToJson处理器.如果我们使用这个处理器,那么我们需要使用UpdateAttribute处理器在AttributesToJson处理器之前准备属性/值
流程:
1.SplitXml
2.ExtractText //add data property to extract content to flowfile attribute
3.UpdateAttribute //add name property -> user1
add time property -> ${now()}
add data property -> ${data:replaceAll('\s',''):escapeJson()}}
4.AttributeToJson //Attributes List -> name,time,data
Destination -> flowfile content
include core attributes -> false
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
431 次 |
| 最近记录: |