gpt4 book ai didi

elasticsearch - 使用 PHP curl 在 ElasticSearch 中索引文档

转载 作者:行者123 更新时间:2023-11-29 02:51:12 25 4
gpt4 key购买 nike

我正在尝试将文档添加到 ElasticSearch。我在命令行中使用 curl 没有问题,但在 PHP 中使用 curl 时遇到问题。我正在关注文档中的这个示例:http://www.elasticsearch.org/guide/reference/api/index_.html

下面的代码给我这个错误:{"error":"IndexMissingException[[twitter] missing]","status":404}

$search_host = '127.0.0.1';
$search_port = '9200';
$index = 'twitter';
$doc_type = 'tweet';
$doc_id = 1;

$json_doc = array(
"user" => "kimchy",
"post_date" => "2012-11-15T14:12:12",
"message" => "trying out Elastic Search"
);
$json_doc = json_encode($json_doc);

$baseUri = 'http://'.$search_host.':'.$search_port.'/'.$index.'/'.$doc_type.'/'.$doc_id;

$ci = curl_init();
curl_setopt($ci, CURLOPT_URL, $baseUri);
curl_setopt($ci, CURLOPT_PORT, $search_port);
curl_setopt($ci, CURLOPT_TIMEOUT, 200);
curl_setopt($ci, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ci, CURLOPT_FORBID_REUSE, 0);
curl_setopt($ci, CURLOPT_CUSTOMREQUEST, 'XPUT');
curl_setopt($ci, CURLOPT_POSTFIELDS, $json_doc);
$response = curl_exec($ci);

最佳答案

您必须将 curl 选项 CURLOPT_CUSTOMREQUEST 设置为 PUT,而不是 XPUT

curl_setopt($ci, CURLOPT_CUSTOMREQUEST, 'PUT');

关于elasticsearch - 使用 PHP curl 在 ElasticSearch 中索引文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13576703/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com