我正在尝试使用 React-SearchKit 连接到 ElasticSearch 7 .
我正在关注React-SearchKit官方Connect Your REST APIs guide 。根据该指南,可以通过将以下对象作为参数传递给 ReactSearchKit
组件来配置 ElasticSearch 适配器:
const searchApi = new ESSearchApi({
url: 'http://localhost:9200/search/',
timeout: 5000
});
我将对象传递给组件,如下所示:
class App extends Component {
render() {
return (
<ReactSearchKit searchApi={searchApi}>
<div style={{ margin: '2em auto', width: '50%' }}>
<SearchBar />
<ResultsList />
</div>
</ReactSearchKit>
);
}
}
问题是,当尝试执行应用程序时,我收到 405 错误(不允许使用方法)。我认为向 ElasticSearch 发送 POST 请求应该不会有问题。可能出了什么问题?
最佳答案
假设 http://localhost:9200
是您的 ES-Node,Elasticsearch 中正确的搜索端点是:
http://localhost:9200/_search
如果您想搜索所有索引http://localhost:9200/foo/_search
如果你想搜索 foo 索引http://localhost:9200/foo,bar/_search
如果您想搜索 foo 和 bar 这两个索引http://localhost:9200/data*/_search
如果您想搜索以 data 开头的所有索引
您缺少 _(下划线)。
以下是相关文档:https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-body.html
关于reactjs - 尝试使用 React-SearchKit 连接到 ElasticSearch 7 时出现错误 405(方法不允许),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60028334/