elasticsearch - Elasticsearch附件类型不起作用

标签 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上面放一些随机文件名,它会给出相同的错误,我认为它不是在读取文件本身。
我要去哪里错了?

最佳答案

要消除此错误,“content”属性的值必须是base64编码的字符串。您需要读取文件的内容,并将其转换为base64编码的字符串,然后将该字符串放置在上面的“... base64编码的附件...”的位置。

关于elasticsearch - Elasticsearch附件类型不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23426655/

相关文章:

java - Elasticsearch自定义插件: Add extra query parameter before search

post - ElasticSearch自定义插件无法从发布请求参数获取

elasticsearch - Kibana 4, map 不显示特定区域

java - 此Hibernate Search错误的原因/影响是什么?

ios - ics 文件 - 无法在 iOS7 中打开附加的 .ICS 文件

ruby-on-rails - Searchkick word_start 在 Rails 中不起作用

javascript - 需要帮助将音频附加到警报框

php - 通过 python 或 php 从 gmail 中获取附件

elasticsearch - Elasticsearch 查询,仅返回最独特的结果

elasticsearch - Elasticsearch 的配置位置是什么?同义词文件应该放在哪里?