Amazon web services AWS APIGateway集成响应映射模板无法根据内容类型正确切换
我正在试验AWS API网关与S3后端的集成。我注意到集成响应中不同映射模板之间的切换似乎不起作用 在集成响应中,我有以下映射模板: 应用程序/json:Amazon web services AWS APIGateway集成响应映射模板无法根据内容类型正确切换,amazon-web-services,amazon-s3,aws-api-gateway,integration,Amazon Web Services,Amazon S3,Aws Api Gateway,Integration,我正在试验AWS API网关与S3后端的集成。我注意到集成响应中不同映射模板之间的切换似乎不起作用 在集成响应中,我有以下映射模板: 应用程序/json: { type: "JSON", body: "$input.body" } PlainText: $input.body 文本/纯文本: { type: "JSON", body: "$input.body" } PlainText: $in
{
type: "JSON",
body: "$input.body"
}
PlainText:
$input.body
文本/纯文本:
{
type: "JSON",
body: "$input.body"
}
PlainText:
$input.body
我无能为力,似乎无法使用text/plain
映射模板-它始终使用application/json
我希望使用text/plain
映射模板时基于以下情况之一:
Accept:text/plain
头内容类型:text/plain
,我请求Accept:text/plain
。API网关也正确响应内容类型:text/plain
。
但是,application/json
模板仍然用于转换主体
我甚至将application/json
作为有效的响应类型从方法响应中完全删除,但仍然没有
你知道为什么会这样吗
仅供参考,我使用的是经典的v1 ApiGateway(Rest)
AWS支持人员向我确认,该开关基于原始请求
Accept
标题。使用Postman测试此功能可确认此功能
但是,AWS控制台中内置的API网关测试工具似乎不适合测试响应映射模板——来自AWS支持:API网关测试控制台的目的只是测试集成,它不适用于端到端请求