データを追加し、elasticsearch インデックスを更新したいと考えています。私は Elasticsearch クライアントの経験があまりないので、jQuery ですべてを処理しようとしています。
データを追加するには、まず最高の をチェックしてid
から、PUT 経由で JSON オブジェクトを送信します。
var persondata = {
"field1": $('#field1').val(),
"field2": $('#field2').val(),
"field3": $('#field3').val()
};
$.ajax({
type: "POST",
url: 'http://localhost:9200/_search',
dataType: 'json',
data: JSON.stringify( { "query" : { "match_all" : {} }, "sort": [ { "_uid": "desc" } ] } )
})
.done(function( result ){
var highestid = parseInt(result.hits.hits[0]._id, 10) + 1;
$.ajax({
type: "PUT",
url: 'http://localhost:9200/mytable/persons/'+ highestid,
dataType: 'json',
data: JSON.stringify( persondata )
});
});
curl を介してデータを追加するには、次のコードを見つけました。
curl -XPUT "http://localhost:9200/movies/movie/1" -d'
{
"title": "The Godfather",
"director": "Francis Ford Coppola",
"year": 1972
}'
(出典: http://joelabrahamsson.com/elasticsearch-101/ )
私のコードが機能していないので、後に「-d」が必要かどうか疑問に思っていid
ます。もちろん、これを単純に追加しようとしましたが、うまくいきません。
この「-d」は何のためですか?
また、jQuery 経由で Elasticsearch インデックスにデータを追加するにはどうすればよいですか?