AWS API Gateway可以与AWS Step Function集成,以便将API请求转换为Step Function任务。然而,使用AWS API Gateway和Step Function集成时,有时会出现”500 Error on Success”的问题。
解决方法是在API Gateway的集成响应中添加一个成功(2xx)状态码的映射模板。在模板中添加以下代码:
{ "statusCode": 200, "body": $input.json('$') }
这个映射模板会将成功状态下的响应转换为200状态码和响应体中的JSON数据。这样就可以解决”500 Error on Success”的问题了。
完整的映射模板示例:
{ "application/json": { "SuccessResponse": { "statusCode": 200, "body": $input.json('$') }, "ErrorResponse": { "statusCode": 500, "body": { "message": $input.path('$.errorMessage') } } } }