我有一个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');
}
});
暂无答案!
目前还没有任何答案,快来回答吧!