如何通过react js中的javascript客户端连接到aws elastic search?

7z5jn7bk  于 2021-06-15  发布在  ElasticSearch
关注(0)|答案(0)|浏览(220)

我有一个Reactjs与typescript项目和下面的代码。以下是我遵循的步骤。我运行以下命令来安装,然后运行代码。总是超时。我使用的密钥属于对es域具有完全访问权限的aws用户。另外,我发现它正在被使用,这是其他人的代码,因此(右下方)

var AWS = require('aws-sdk');
var connectionClass = require('http-aws-es');
var elasticsearch = require('elasticsearch');
var elasticClient = new elasticsearch.Client({  
    host:***,
    log: 'error',
    connectionClass: connectionClass,
  **amazonES:**{
      credentials: new AWS.EnvironmentCredentials('AWS')
    }
});

它定义了amazones(上面用粗体表示)。当我尝试如上所述使用时,amazones甚至没有为elasticsearch客户端定义,是不是在以前的版本中???下面是mycode。
npm安装elasticsearch7.x(此版本下载了最新版本elasticsearch.js 16.7.1->https://www.npmjs.com/package/elasticsearch)
npm安装http aws es
npm安装aws sdk
代码是

import es from 'elasticsearch'; 
import connectionClass from 'http-aws-es';
import AWS from 'aws-sdk'; 

let client = elasticsearch.Client({
    hosts: ['host'],
    connectionClass: require('http-aws-es'),
    awsConfig: new AWS.Config({
        accessKeyId: 'AKID', secretAccessKey: 'SECRET', region: 'us-west-2'
    })
});

client.ping({
  requestTimeout: 5000
}, function (error) {
  if (error) {
    console.log(error);
  } else {
    console.log('success');
  }
});

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题