我正在尝试使用Mock集成来“回复”我发送的JSON正文。但是,我无法让它发挥作用。我可以从“POST - Integration Response”中返回任意JSON主体,但是永远不会通过$input.json('$')
找到请求JSON。我已经能够成功回显任何查询参数。
我的API有一个“/”路径和一个定义的单个方法(POST)。导出的yaml为here。
有关可能发生的事情的任何想法吗?
答案 0 :(得分:6)
我发现这实际上是可行的,尽管有点。 首先,在集成请求映射模板中,将正文存储在path参数中。
#set($context.requestOverride.path.body = $input.body)
{
"statusCode": 200,
}
然后在集成响应映射模板中将其取回并返回。
#set($body = $context.requestOverride.path.body)
{
"statusCode": 200,
"body": $body,
}
这似乎在较大的有效载荷下也能很好地工作。
答案 1 :(得分:3)
不幸的是,这不受支持。在“集成响应”的映射模板中,$input
表示从集成响应接收的有效负载(在MOCK
集成的情况下为空。
答案 2 :(得分:0)
您可以设置一个lambda函数来回显目标,诸如此类:
exports.handler = async (event) => {
return event;
};