根据 JSON 请求输入抛出特定状态代码 - API 网关端点

Throw a particular status code based on the JSON request input - API Gateway endpoint

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

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

例如

{ "desiredResponse": "200" }

将 return 响应代码为 200。

{ "desiredResponse": "400" }

是否会 return 响应代码为 400。

据我了解,这无法通过模拟集成响应实现 (参考:https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html

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

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

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

首先:使用 Lambda Proxy Integration 将特定错误输出到 JSON 响应主体。

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