📅  最后修改于: 2023-12-03 14:40:57.458000             🧑  作者: Mango
Elasticsearch 是一个基于 Lucene 的开源搜索引擎,可用于全文搜索、结构化搜索和分析等。Elasticsearch 模块是与 Elasticsearch 连接并进行交互的 Node.js 模块。
可以使用 npm 引入 Elasticsearch 模块。
npm install elasticsearch
连接到 Elasticsearch 可以使用 Elasticsearch.Client
。在构造函数中可以传入一个配置对象,如下所示:
const elasticsearch = require('elasticsearch');
const client = new elasticsearch.Client({
host: 'localhost:9200',
log: 'trace'
});
可以使用 client.indices.create
方法创建 Elasticsearch 索引。下面是一个创建名为 myindex
的索引的示例:
client.indices.create({
index: 'myindex'
}, function(error, response, status) {
if (error) {
console.log(error);
} else {
console.log('创建索引成功', response);
}
});
可以使用 client.index
方法添加文档到 Elasticsearch 索引中。下面是一个添加一篇帖子的示例:
client.index({
index: 'myindex',
id: '1',
body: {
title: 'Node.js',
content: 'Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时环境。'
}
}, function(error, response, status) {
console.log(response);
});
可以使用 client.search
方法搜索 Elasticsearch 索引中的文档。下面是一个搜索帖子标题中包含关键字 "Node.js" 的示例:
client.search({
index: 'myindex',
body: {
query: {
match: {
title: 'Node.js'
}
}
}
}, function(error, response, status) {
console.log(response);
});
以上是 Elasticsearch 模块的基本介绍和示例代码。使用 Elasticsearch 模块可以轻松地与 Elasticsearch 进行交互,从而实现全文搜索、结构化搜索和分析等功能。