Elasticsearch(ES)是一个基于Lucene的搜索和分析引擎,它使得我们可以通过它的RESTful API进行各种操作。
在JavaScript中,我们可以使用AJAX(Asynchronous JavaScript and XML)来进行异步的HTTP请求。
以下是一些ES语法和AJAX操作的示例:
- 创建索引:
$.ajax({
url: 'http://localhost:9200/my_index',
type: 'PUT',
success: function(response) {
console.log(response);
},
error: function(error) {
console.log(error);
}
});
- 获取索引信息:
$.ajax({
url: 'http://localhost:9200/my_index',
type: 'GET',
success: function(response) {
console.log(response);
},
error: function(error) {
console.log(error);
}
});
- 添加文档:
$.ajax({
url: 'http://localhost:9200/my_index/my_type/',
type: 'POST',
contentType: 'application/json',
data: JSON.stringify({
title: 'Document title',
content: 'Document content'
}),
success: function(response) {
console.log(response);
},
error: function(error) {
console.log(error);
}
});
- 搜索文档:
$.ajax({
url: 'http://localhost:9200/my_index/my_type/_search',
type: 'GET',
data: {
q: 'title:Document'
},
success: function(response) {
console.log(response);
},
error: function(error) {
console.log(error);
}
});
- 更新文档:
$.ajax({
url: 'http://localhost:9200/my_index/my_type/1',
type: 'POST',
contentType: 'application/json',
data: JSON.stringify({
title: 'Updated title'
}),
success: function(response) {
console.log(response);
},
error: function(error) {
console.log(error);
}
});
- 删除文档:
$.ajax({
url: 'http://localhost:9200/my_index/my_type/1',
type: 'DELETE',
success: function(response) {
console.log(response);
},
error: function(error) {
console.log(error);
}
});
- 删除索引:
$.ajax({
url: 'http://localhost:9200/my_index',
type: 'DELETE',
success: function(response) {
console.log(response);
},
error: function(error) {
console.log(error);
}
});
以上代码中,我们使用jQuery的$.ajax方法进行HTTP请求。这是一种常见的方式,你也可以使用原生