Aws lambda AWS Lambda函数在手动调用时工作正常,但不能通过端点调用

Aws lambda AWS Lambda函数在手动调用时工作正常,但不能通过端点调用,aws-lambda,amazon-dynamodb,aws-api-gateway,aws-amplify,Aws Lambda,Amazon Dynamodb,Aws Api Gateway,Aws Amplify,我有一个Lambda函数,连接到API网关端点,它列出了DynamoDB中ID下的项 我已经使用无服务器框架构建了我的函数。当我在本地调用函数时,无服务器调用本地。。。它很好用。当我在AWS Lambda控制台上手动测试它时,它工作正常,但当我从API网关调用它时,它就不工作了 它被配置为使用这个有效负载:我用于测试的内容 { "requestContext": { "identity": { "cognitoIdentityId": "46864

我有一个Lambda函数,连接到API网关端点,它列出了DynamoDB中ID下的项

我已经使用无服务器框架构建了我的函数。当我在本地调用函数时,无服务器调用本地。。。它很好用。当我在AWS Lambda控制台上手动测试它时,它工作正常,但当我从API网关调用它时,它就不工作了

它被配置为使用这个有效负载:我用于测试的内容

{
    "requestContext": {
        "identity": {
            "cognitoIdentityId": "468648c5-b135-4075-910a-8a648d66e67d"
        }
   }
}
在我的应用程序中,我使用aws放大软件包。我这样称呼端点:

data = await API.get('endpoint-name', '/endpoint', {
    body: {
        requestContext: {
            cognitoIdentityId: '468648c5-b135-4075-910a-8a648d66e67d'
        }
    }
});
这里,我得到一个403错误。如果我在没有额外数据的情况下调用它,即:

data = await API.get('endpoint-name', '/endpoint');
我得到一个空列表[],但没有错误。aws放大是否自动填充cognitoIdentityId字段?我正在学习教程,他们对这一点进行了润色

我还设置了CloudWatch,但我看不到任何令人讨厌的东西。关于如何修复/调试此问题有何想法


干杯

啊-我想我解决了

我将端点配置为从GET请求主体获取参数,但是我认为aws amplify或API网关在执行GET时不支持请求主体。我通过手动测试API网关注意到了这一点,我以前没有这样做过,并且声明GET方法不支持请求体

因此,我认为我必须在URL本身中传递参数。

我认为HTTP中的GET方法在定义上不包括主体。