Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala AWS ElasticSearch上的错误请求_Scala_Amazon Web Services_<img Src="//i.stack.imgur.com/A3TTx.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">amazon Elasticsearch_Aws Java Sdk - Fatal编程技术网 amazon-elasticsearch,aws-java-sdk,Scala,Amazon Web Services,amazon Elasticsearch,Aws Java Sdk" /> amazon-elasticsearch,aws-java-sdk,Scala,Amazon Web Services,amazon Elasticsearch,Aws Java Sdk" />

Scala AWS ElasticSearch上的错误请求

Scala AWS ElasticSearch上的错误请求,scala,amazon-web-services,amazon-elasticsearch,aws-java-sdk,Scala,Amazon Web Services,amazon Elasticsearch,Aws Java Sdk,我试图连接到一个IAM控制的ElasticSearch域,我创建了一个请求,并对其进行了签名,对于方法GET来说一切正常,但在方法POST上,我收到了一个400错误的请求 这显然与有效载荷有关。如果我提供一个有效负载空字符串(“”),它会正常工作,但其他任何操作都会导致错误的请求 我错过了什么 val url=s“https://$host/TEST/article/\u search” val serviceName=“es” val regionName=“us-east-1” val请求=

我试图连接到一个IAM控制的ElasticSearch域,我创建了一个请求,并对其进行了签名,对于方法GET来说一切正常,但在方法POST上,我收到了一个400错误的请求

这显然与有效载荷有关。如果我提供一个有效负载空字符串(“”),它会正常工作,但其他任何操作都会导致错误的请求

我错过了什么

val url=s“https://$host/TEST/article/\u search”
val serviceName=“es”
val regionName=“us-east-1”
val请求=新的默认请求(serviceName)
val有效载荷=
“{”1:“1”}”“。修剪
val payloadBytes=payload.getBytes(StandardCharsets.UTF_8)
val payloadStream=新的ByteArrayInputStream(payloadBytes)
request.setContent(payloadStream)
val endpointUri=URI.create(url)
request.setEndpoint(endpointUri)
request.setHttpMethod(HttpMethodName.POST)
val credProvider=新环境VariableCredentialsProvider
val凭据=credProvider.getCredentials
val签名者=新的AWS4Signer
signer.setRegionName(regionName)
signer.setServiceName(serviceName)
签名者。签名(请求、凭据)
val context=新的ExecutionContext(true)
val clientConfiguration=new clientConfiguration()
val client=新的AmazonHttpClient(客户端配置)
val rh=新的MyHttpResponseHandler
val eh=新的MyErrorHandler
val响应=
执行(请求、rh、eh、上下文);

注意:如果遇到此问题,请检查响应的实际内容,这可能是索引和查询不匹配的结果

我的问题是,我使用的特定查询不适合指定的索引,这导致了错误