首页 > 解决方案 > 根据 JSON 请求输入抛出特定状态代码 - API Gateway 端点

问题描述

我正在创建一个 Mock 端点来处理开发项目。

我想根据 JSON 请求正文中的字符串抛出某些响应代码。

例如

{ "desiredResponse": "200" }

将返回 200 的响应代码。

{ "desiredResponse": "400" }

将返回 400 的响应代码。

据我了解,这是不可能通过模拟集成响应(参考:https ://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html )

这可以通过 Lambda 函数实现吗?或者有任何可能的解决方法吗?

由于这个项目的性质,我不想使用请求查询字符串或标题来设置响应代码。

我在这里看到了解决方法,https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-override-request-response-parameters.html但我真的需要响应代码依赖于请求数据.

标签: amazon-web-servicesaws-api-gatewayendpoint

解决方案


首先:使用Lambda 代理集成 将特定错误输出到 JSON 响应正文。

然后,使用API 集成响应将错误字符串映射到使用 Lambda 错误正则表达式字段的特定状态代码。


推荐阅读