【发布时间】:2019-07-22 15:42:01
【问题描述】:
我有一个在本地运行的 ElasticSearch 实例,它运行良好。现在我想使用 SQL 查询索引。我使用 NodeJS-Client (v7) 尝试了它,通常是通过 REST-Api。 休息电话:
POST http://localhost:9200/_sql
{
"body": {
"query": "DESCRIBE indexname"
}
}
通过 nodeJS:
elasticClient.sql.query({
format: "json",
body: {
query: "DESCRIBE indexname"
}
}).then(result => {
console.log(result);
}).catch(reject => {
console.log(reject);
});
两者都返回相同的错误:
uri [/_sql] 和方法 [POST] 的 HTTP 方法不正确,允许:[GET, HEAD, PUT, DELETE] 状态:405
有人可以帮忙吗? 干杯!
【问题讨论】:
-
在盆景上有同样的问题...但什么也没找到:-(
-
您使用的是哪个版本的 ES?我怀疑您正在针对 v6 集群运行 v7 JS 客户端
-
您可以使用
curl或除此客户端代码之外的其他内容运行相同的POST _sql请求吗? (询问是因为该错误消息对于 x-pack 未安装 或 ES-SQL 未启用 的设置很典型)并且有助于了解确切的版本ES 服务器。另外,POST请求_sql的正文应该是{"query": "DESCRIBE indexname"},不知道为什么你有body。 -
@tiefenb 你能详细说明上面提出的问题吗?对某个帖子感兴趣,并为此提供赏金,但不准备帮助进行调查并不是很有成效。
标签: node.js elasticsearch elasticsearch-sql