在通过API网关外部访问的EC2实例上运行的旧式微服务。微服务返回带有可发现性url选项的JSON响应:
获取/ api / accout / 0001
{
id: "0001",
balance: 1000000,
currency: "BTC",
_links: [
{name: "close", method: "DELETE", url: "http://10.0.0.1:8080/api/account/0001" },
{name: "deposit", method: "POST", url: "http://10.0.0.1:8080/api/account/0001/deposit" }
]
}
API网关通过https和自定义域名公开API,因此,像“ http://10.0.0.1:8080/api/account/0001”之类的链接在外部没有任何意义。
在将微服务的响应传递到外部api客户端之前,如何配置AWS API Gateway将“ http://10.0.0.1:8080/api/account/0001”替换为“ https://api.mycompany.com/api/account/0001”?
答案 0 :(得分:0)
API网关支持响应转换和方法映射功能。
您可以使用所需的转换定义响应模板:
API Gateway Response transformation
基于此:
如果需要,添加主体映射模板以转换给定的集成 响应有效载荷转换为指定的方法响应有效载荷。
Specifically Method Models,它使用JSON路径表达式,可用于转换。