我已经联系AWS支持,并被告知目前不可能,但是,我很难相信并希望获得第二种意见。API网关集成响应模型模板 - 删除属性
我的情况是这样的:
我现在有一个API,我们使用的请求和响应两者模型模板......东西看起来像这样(的合并请求中):
#set($input = $input.body)
#set($newbody = $input.replace("CostRecoveryGUID",
"CostRecoveryId").replace("InvoiceItemGUID", "InvoiceItemId"))
$newbody
这将按照预期返回模型,但是,它首先会替换一些属性名称 - 这很好。
我想接收body对象(在响应中)并从响应中删除整个属性。我知道这可能听起来像一个奇怪的情况,但是,这是必要的。
因此,假设相同的代码 - 我想是这样的:
#set($input = $input.body)
#set($newbody = $input.replace("CostRecoveryGUID",
"CostRecoveryId").replace("InvoiceItemGUID",
"InvoiceItemId").remove("PropertyName"))
$newbody
哪家没有不幸的是工作。
我也曾尝试
#set($newbody = $newbody.delete("PropertyName")
,并有一些变化。
有没有其他人有可能的解决方案?
感谢
它将作为字符串返回。你需要在模板或客户端中使用JSON对象吗?如果您的应用程序/客户端需要JSON对象,则可以将JSON字符串解析为对象。 –
因此,在读出它之前,没有办法将对象解析为Json?类似'$ util.parseJson()'方法? http://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html – Hexie