如何通过URL(http)创建Elasticsearch文档文档

时间:2019-04-25 23:09:02

标签: api elasticsearch

我是Elasticsearch的新手,正在尝试寻找一种从url(http-API)创建文档的方法。我在下面给出的选项中进行了尝试,但没有一个起作用。

    http://Myserver:9200/dilbert/user/3 -d '{ "name" : "Praveena" }
    http://Myserver:9200/dilbert/user/3{ "name" : "Praveena" }
    http://Myserver:9200/dilbert/user/3?pretty _create name=Praveena

我希望这会添加一条记录。这里的dilbert是索引名称。用户是类型&3是ID。该索引仅包含一个名为name的元素。

1 个答案:

答案 0 :(得分:0)

第一个选项应该起作用,但是您必须将请求类型显式设置为PUT

在我看来,您使用curl来插入数据。如果使用-d选项将数据发送到服务器,则默认情况下curl发出POST请求。但是您在URL中指定了文档ID,因此Elasticsearch等待PUT请求(请参阅official documentation)。您只能在automatic ID generation的情况下使用POST请求。

因此您的请求可能如下所示:

curl -X PUT http://Myserver:9200/dilbert/user/3 -d '{ "name" : "Praveena" }'