通过AWS Mobile Hub创建的API不起作用

时间:2017-03-10 17:41:31

标签: amazon-web-services post lambda aws-api-gateway aws-mobilehub

我正在尝试创建一个API端点,以便在我的移动应用程序中执行我的AWS Lambda函数。当我创建自定义API并测试POST方法时,我得到正确的响应代码200并且正确的字符串短语返回:"The name is {input}"

但是,当我尝试将此API导入我的项目时,它不会显示在SDK中。当我尝试通过Mobile Hub创建API时,我遵循相同的步骤,但是当我输入POST方法时,我收到以下错误消息:

Endpoint response body before transformations: "The name is InputName"
Fri Mar 10 17:39:33 UTC 2017 : Endpoint response headers: {x-amzn-Remapped-Content-Length=0, x-amzn-RequestId=8599f413-05b8-11e7-92d2-75672f730ae7, Connection=keep-alive, Content-Length=23, Date=Fri, 10 Mar 2017 17:39:32 GMT, Content-Type=application/json}
Fri Mar 10 17:39:33 UTC 2017 : Execution failed due to configuration error: Output mapping refers to an invalid method response: 200
Fri Mar 10 17:39:33 UTC 2017 : Method completed with status: 500

1 个答案:

答案 0 :(得分:3)

这通常表示在API中如何配置方法响应的问题。

要查看您的方法响应,请在API网关控制台中单击您用于请求的方法,然后单击"方法响应"框。您应该看到一个包含一个或多个HTTP状态代码的表。

API Gateway使用此功能将Lambda函数的响应映射到您选择的状态代码。我怀疑您当前的映射与Lambda函数返回的映射不匹配,从而导致错误。

本教程深入介绍了响应映射http://docs.aws.amazon.com/apigateway/latest/developerguide/getting-started-models.html