Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Json ElasticSearch上的批量请求返回消息";批量请求必须以换行符“终止”;_Json_Rest_<img Src="//i.stack.imgur.com/RUiNP.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">elasticsearch - Fatal编程技术网 elasticsearch,Json,Rest,elasticsearch" /> elasticsearch,Json,Rest,elasticsearch" />

Json ElasticSearch上的批量请求返回消息";批量请求必须以换行符“终止”;

Json ElasticSearch上的批量请求返回消息";批量请求必须以换行符“终止”;,json,rest,elasticsearch,Json,Rest,elasticsearch,我知道在StackOverflow上已经有类似的问题,但没有一个能解决我当前的问题 我正在使用ElasticSearch 6.7.0,目前正在学习它的教程。目前,我被困在,这需要我保存一些存储在文件accounts.json中的样本数据。以下是该文件的一个小片段: {"index":{"_id":"988"}} {"account_number":988,"balance":17803,"firstname":"Lucy","lastname":"Castro","age":34,"gender

我知道在StackOverflow上已经有类似的问题,但没有一个能解决我当前的问题

我正在使用ElasticSearch 6.7.0,目前正在学习它的教程。目前,我被困在,这需要我保存一些存储在文件
accounts.json
中的样本数据。以下是该文件的一个小片段:

{"index":{"_id":"988"}}
{"account_number":988,"balance":17803,"firstname":"Lucy","lastname":"Castro","age":34,"gender":"F","address":"425 Fleet Walk","employer":"Geekfarm","email":"lucycastro@geekfarm.com","city":"Mulino","state":"VA"}
{"index":{"_id":"990"}}
{"account_number":990,"balance":44456,"firstname":"Kelly","lastname":"Steele","age":35,"gender":"M","address":"809 Hoyt Street","employer":"Eschoir","email":"kellysteele@eschoir.com","city":"Stewartville","state":"ID"}
{"index":{"_id":"995"}}
{"account_number":995,"balance":21153,"firstname":"Phelps","lastname":"Parrish","age":25,"gender":"M","address":"666 Miller Place","employer":"Pearlessa","email":"phelpsparrish@pearlessa.com","city":"Brecon","state":"ME"}
该文件保存在路径
C:\Users\Me\Desktop\accounts.json

我按照教程中的说明运行了以下命令,

PS C:\Users\Me\Downloads\curl-7.64.1-win64-mingw\bin>\curl.exe-H “内容类型:应用程序主机:9200/bank/\u doc/\u bulk?漂亮&刷新” --数据二进制“C:\Users\Me\Desktop\accounts.json”

我收到了以下错误消息:

{
  "error" : {
    "root_cause" : [
      {
        "type" : "illegal_argument_exception",
        "reason" : "The bulk request must be terminated by a newline [\n]"
      }
    ],
    "type" : "illegal_argument_exception",
    "reason" : "The bulk request must be terminated by a newline [\n]"
  },
  "status" : 400
}
为了解决这个问题,我走到文件的末尾,按Enter键插入了一行新行。但是,当我再次运行该命令时,出现了相同的错误消息


如何解决此问题?

我将
accounts.json
文件移动到运行
curl.exe
的同一目录,并执行以下命令:

.\curl.exe-H“内容类型:应用程序 lhost:9200/bank/_doc/_bulk?漂亮&刷新”--数据二进制 “@accounts.json”

这一次,批量请求成功

对于面临类似问题的用户,请记住通过按
Enter
在文件末尾插入新行。如果不起作用,请尝试将文件移动到另一个目录中。错误消息“批量请求必须通过换行符终止”可能会产生误导性,即您的文件可能根本没有格式错误;可能由于各种原因无法找到或访问它。

使用“@C:\Users\Me\Desktop\accounts.json”而不是“C:\Users\Me\Desktop\accounts.json”

i、 e


尝试更改文件的下线字符和编码,如下所述:

愚蠢的问题,但你在结尾添加新行后保存了文件吗?@Val-Yup,我保存了!使用“@C:\Users\Me\Desktop\accounts.json”而不是“C:\Users\Me\Desktop\accounts.json”
\curl.exe -H "Content-Type: applicati lhost:9200/bank/_doc/_bulk?pretty&refresh" --data-binary "@C:\Users\Me\Desktop\accounts.json"