Appsync 解析器 ResponseMappingTemplate- 直接映射与模板映射

Appsync Resolver ResponseMappingTemplate- Direct mapping vs Template mapping

我在 AWS::AppSync::Resolver 中有以下 ResponseMappingTemplate,它不起作用(遵循来自 aws https://docs.aws.amazon.com/appsync/latest/devguide/tutorial-http-resolvers.html 的文档)

ResponseMappingTemplate: |
        {
          #if($ctx.result.statusCode == 200)
            $ctx.result.body
          #else
            $utils.appendError($ctx.result.body, "$ctx.result.statusCode")
          #end
        }

上面给我的错误:

"message": "Unable to convert {\n
[{\"employeeId\":10901},{\"employeeId\":11352}]\n } to class java.lang.Object."

但是它可以像这样直接映射:

ResponseMappingTemplate: $ctx.result.body

我真的不明白,有什么想法吗?

您发布的 JSON 简介似乎无效。

{\n
[{\"employeeId\":10901},{\"employeeId\":11352}]\n } 

您的列表中似乎多了一个 {}。 JSON 对象必须定义键。