elasticsearch AWS appync查询解析器返回null,elasticsearch,graphql,amazon-vpc,aws-appsync,elasticsearch,Graphql,Amazon Vpc,Aws Appsync" /> elasticsearch AWS appync查询解析器返回null,elasticsearch,graphql,amazon-vpc,aws-appsync,elasticsearch,Graphql,Amazon Vpc,Aws Appsync" />

elasticsearch AWS appync查询解析器返回null

elasticsearch AWS appync查询解析器返回null,elasticsearch,graphql,amazon-vpc,aws-appsync,elasticsearch,Graphql,Amazon Vpc,Aws Appsync,我有以下疑问: query kitchen { getItemKitchen(id:"fakeIdHere") { id kitchenName } } 返回: { "data": { "getItemKitchen": null } } 并在模式中定义了如下查询: type Query @aws_cognito_user_pools @aws_api_key { getItemKitchen(id: ID!): ItemKitchen 解析

我有以下疑问:

query kitchen {
  getItemKitchen(id:"fakeIdHere") {
    id
    kitchenName
  }
}
返回:

{
  "data": {
    "getItemKitchen": null
  }
}
并在模式中定义了如下查询:

type Query @aws_cognito_user_pools
@aws_api_key {
    getItemKitchen(id: ID!): ItemKitchen
解析程序请求模板为:

{
    "version":"2017-02-28",
    "operation":"GET",
    "path":"/myType/myIndex/_search",
    "params": {
        "body": {
            "query": {
                "match": {
                    "id.keyword": "${context.arguments.id}"
                }
            }
        }
    }
}
和我的回复模板:

$util.toJson($context.result.get("_source"))
我期望得到以下回应:

{
"result": {
        "_source": {
            "id": "HelloWorldTestId",
            "createdAt": "Hello, world!"
        }
    }
}
我还有一个工作正常的变异,使我能够在dynamodb上创建项目,然后通过lambda函数发送到elasticsearch进行查询

我已检查elasticsearch上是否存在该项目

我的Elasticsearch和DynamoDb实例都位于专有网络中。在添加VPC之前,我能够查询elasticsearch实例并获得响应。 根据文档,这种反应意味着没有附加解析程序,但突变似乎工作得很好。我已尝试移除并重新连接冲突解决程序,但什么也没有发生


任何帮助都将不胜感激,因为这将变得非常令人沮丧。

目前,AppSync不支持VPC后面的Elasticsearch实例。 请参见此处文档的第一行:


这就是为什么在添加专有网络之前,查询对您有效。

您希望得到什么?因为您查询的是假ID,所以是空哈希而不是null?我希望是项。案例中的项目已存在。同样的查询在kibana上运行得很好,返回预期的项仅返回$context参数更改无任何更改您可以显示预期匹配的示例文档吗?添加了示例文档