使用elasticsearch JS客户端,如果我想获取所有索引,则会提供API https://www.elastic.co/guide/en/elasticsearch/client/javascript-api/current/api-reference.html#api-cat-indices
但是,输出格式是字符串。 如果我想找到最新的索引,我需要操作字符串,例如按空格分割,通过数组迭代并按照某些标准过滤内容等。
相反,是否可以从API获取json输出?
PS:我确实注意到这个thread建议使用/*/_aliases
并且运行良好,但我想知道如何利用elasticsearch js客户端API
答案 0 :(得分:3)
cat API意味着人类消费(因此不是JSON)。
如果您想获取JSON数据,可以使用indices.stats
调用(点击/_stats
API端点)。
client.indices.stats({
index: "_all",
level: "indices"
}, function(err, res) {
// res contains JSON data about indices stats
});
<强>更新强>:
实际上,如果在请求中指定参数format: json
,则cat API也会返回JSON数据:
client.cat.indices({"format": "json"}, function(err, res) {
...
});