Elasticsearch Attachement类型不起作用

时间:2014-05-02 11:06:50

标签: elasticsearch attachment elasticsearch-plugin

我正在使用Windows和REST API并已安装附件插件,重新启动elasticsearch并为attachment中的特定类型创建了_mapping属性。但是,我收到了一个错误:

我执行了这个:(不工作)

{
http://localhost:9200/documentsx/person/1(post)
}



{
    "my_attachment" : {
        "_content_type" : "application/pdf",
        "_name" : "/sap1.pdf",
        "content" : "... base64 encoded attachment ..."
    }
}

我收到此错误: :

{
  "error": "MapperParsingException[failed to parse]; nested: JsonParseException[Failed to decode VALUE_STRING as base64 (MIME-NO-LINEFEEDS): Illegal white space character (code 0x20) as character #3 of 4-char base64 unit: can only used between units\n at [Source: [B@16dd7aa; line: 5, column: 29]]; ",
  "status": 400
}

顺便说一句,如果我删除文件或在_name上面放置一些随机文件名,它会给出相同的错误,我认为它不是在读取文件本身。 我哪里错了?

1 个答案:

答案 0 :(得分:2)

要摆脱这个错误,"内容的价值" attribute必须是base64编码的字符串。您需要读取文件的内容并将其转换为base64编码的字符串,并将该字符串放在" ... base64编码的附件..."上方。