gpt4 book ai didi

amazon-web-services - AWS API 网关 : Use mock integration to redirect

转载 作者:行者123 更新时间:2023-12-04 08:02:34 25 4
gpt4 key购买 nike

如何在 API Gateway 中创建模拟集成以接受以下请求:

/products/{product}/bigFile.zip?platform={platform}&version={version}

并响应重定向到:
http://xyz.cloudfront.net/{product}/{platform}/{version}.zip

我已经尝试更改请求和响应映射模板,但我不确定它们是如何连接的,因为关于模拟集成的 AWS 文档非常稀少。我可以更改 HTTP 状态代码,但无法获取 Location要根据查询参数填充的 header 。

更广泛的背景(如果我已经提交了 XY 问题)是我正在使用 AWS API Gateway 构建 API。其中一个 API 端点提供不符合 API 网关 10 秒响应时间限制的大文件,因此我想重定向到另一个 CDN 链接。

最佳答案

对于 MOCK 集成,请考虑将状态代码(例如 {"statusCode": 200})定义为后端的模拟状态代码的集成请求模板。除了那个方面,其他组件是相同的。您必须为重定向 3xx 状态代码定义方法响应,并在响应中包含要发送的任何 header 。然后在集成响应页面上,您可以使用单引号将标题的值设置为静态值。因此,无论重定向 URL 是什么,您都可以在此处定义 Location header ,例如“https://other.endpoint.com”。 '

编辑:使用 Lambda 函数 echo 的解决方法

设置 Lambda 函数以回显负载。接下来将查询字符串映射到请求正文,如下所示:

模板:

{
"q": $input.params('foo')
}

假设 Lambda 函数回显相同的负载,您可以将集成响应中的 header 映射源设置为:
integration.response.body.q

关于amazon-web-services - AWS API 网关 : Use mock integration to redirect,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38644508/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com