gpt4 book ai didi

node.js - 使用 elasticsearch 客户端时主机 header 无效

转载 作者:行者123 更新时间:2023-12-02 22:47:49 24 4
gpt4 key购买 nike

使用 elasticsearch 客户端(来自 elasticsearch npm 版本 15.4.1)时,AWS elasticsearch 服务会提示主机 header 无效。每个请求都会发生这种情况,即使它们有效。

我仔细检查了初始化elasticsearch客户端的配置,参数“host”格式正确。

let test = require('elasticsearch').Client({
host: 'search-xxx.us-west-1.es.amazonaws.com',
connectionClass: require('http-aws-es')
});

我希望得到一个没有相应 InvalidHostHeaderRequests 的干净 ElasticsearchRequest(我可以在 Amazon Elasticsearch Service 的集群运行状况仪表板上看到这些日志)。

最佳答案

发现问题。在使用 elasticsearch 库连接 AWS ES 集群时,前面的语法可能会导致问题,因此初始化客户端的最佳方法是指定整个 'host' 对象,如下所示:

host: {
protocol: 'https',
host: 'search-xxx.us-west-1.es.amazonaws.com',
port: '443',
path: '/'

这里的问题是,AWS ES 集群可能需要主机对象内的主机字段,这会导致“无效主机 header ”问题。希望这将有助于社区编写更好的代码。引用 https://www.elastic.co/guide/en/elasticsearch/client/javascript-api/16.x/host-reference.html供引用。

关于node.js - 使用 elasticsearch 客户端时主机 header 无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57003880/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com