我想将xml存储为elasticsearch中的字段。我的目的只是存储xml并检索它。我不想对xml数据执行任何搜索。
**Sample xml** :
<?xml version="1.0" encoding="UTF-8"?>
<sample>
<name>abc</name>
</sample>
注意:我不想将xml转换为json。我想直接在弹性搜索索引中将此示例xml原样写入,并且只是想在存储后检索它。
答案 0 :(得分:1)
这不是解决这个问题的正确方法,但我想到的是 将数据发布到ES时,提供三个双引号(“”“)而不是一个(”)。我想这是一个临时解决方案:
POST my_index/test
{
"xml" : """<?xml version="1.0" encoding="UTF-8"?>
<sample>
<name>abc</name>
</sample>"""
}
答案 1 :(得分:0)
由于您不打算将该字段用于搜索和简单检索,我建议您在映射中添加一个简单的“xml”字符串字段,如下所示(使用“关键字”类型看起来很奇怪,但是它是唯一可以配置为不被分析的字符串字段)
PUT my_index
{
"mappings": {
"test": {
"properties": {
"xml": {
"type": "keyword",
"index": "false"
}
}
}
}
}