当前位置: 首页 > 面试题库 >

Elasticsearch“未添加请求”批量API错误

施阳夏
2023-03-14
问题内容

试图让批量更新在ES 1.0.1上运行。

我在邮递员内发布以下内容:

URL POSTPUThttp://localhost:9200/_bulk

请求正文

{ "update" : { "_index" : "test_people", "_type" : "person", "_id" : "1" }} \n
{ "doc" : { "name":"hi", "age":100 }} \n

我已经尝试过,无论有没有\n。我总是

{
    "error": "ActionRequestValidationException[Validation Failed: 1: no requests added;]",
    "status": 500
}

在使用数据进行创建时,它也做同样的事情:

{
  "create": {
    "_index": "test_people",
    "_type": "person",
    "_id": "1"
  }
}
{
  "name": "hi",
  "age": 100
}

更新资料

我已经在Mac,PC和Linux上尝试过此方法,但不断出现相同的错误。


问题答案:

即使我\n在最后一行上,我在最后一个json行之后也确实要有完整的回车符。

以下工作:

{ "update" : { "_index" : "test_people", "_type" : "person", "_id" : "1" }} \n
{ "doc" : { "name":"hi", "age":100 }}

因此,在该行下方需要有一个空"doc"行。



 类似资料:
  • 问题内容: 我最近升级到了Elasticsearch版本6.1.1,现在我无法从JSON文件批量索引文档。当我内联完成时,它可以正常工作。以下是文档的内容: 当我运行此命令时, 我收到此错误: 如果我以内联方式和在Elasticsearch 5.x中发送数据,效果很好。我尝试将换行符以及换行符添加到文件末尾。似乎不起作用。 问题答案: 在JSON文件的末尾添加 空 行并保存文件,然后尝试运行以下命

  • 我想问一下关于Elasticsearch批量API的问题 这是我使用批量API的代码 我遇到了超时异常,因为我的记录有800K。java.net.SocketTimeoutException:连接超时30,000毫秒http-outgoing-16[活动] 我试图分解传入的jsonList,但有时会出现相同的错误。 我目前使用的是Elasticsearch 7.6.2版本。 异常跟踪 Java.n

  • 问题内容: 我找不到任何有关Elastic Bulk API在一项或多项操作失败时会发生什么情况的文档。例如,对于以下请求,假设已经有一个ID为“ 3”的文档,那么“创建”应该 失败-这会使所有其他操作失败 吗? 我正在使用nodejs弹性模块。 问题答案: 任何一项行动的任何失败都不会影响其他行动。 从elasticsearch bulk api 的文档中: 对批量操作的响应是一个大型JSON结

  • 万事达卡使用两条腿的OAuth。在准备OAuth负载之后,我将其添加到授权密钥中的头中。然后,请求需要与证书一起发送。我在这一步出错了。 我已经根据上提供的示例代码编写了代码https://developer.mastercard.com/portal/display/api/Locations-示例代码 和示例密钥可在https://developer.mastercard.com/portal

  • 批量调用 TOP 接口 参数 名称 类型 是否可选 含义 options Object 选项 options.query Array 请求参数数组 options.query[].topOptions Object 请求参数 options.query[].topOptions.method String TOP 接口名称 options.success Function optional 调用成

  • web3.BatchRequest类用来创建并执行批请求。 调用: new web3.BatchRequest() new web3.eth.BatchRequest() new web3.shh.BatchRequest() new web3.bzz.BatchRequest() 参数: 无 返回值: 一个对象,具有如下方法: add(request): 将请求对象添加到批调用中 execut