Amazon web services AWS Lambda函数API端点-403和415错误

Amazon web services AWS Lambda函数API端点-403和415错误,amazon-web-services,aws-lambda,aws-api-gateway,Amazon Web Services,Aws Lambda,Aws Api Gateway,我有一个AWS Lambda函数,我已经设置好了,正在尝试从前端命中它。它在浏览器中运行良好,并返回我期望的响应。当我尝试从localhost点击它时,我得到一个403。我试图按照概述的步骤进行操作,但没有成功(除了一些评论提到的吹掉我的整个API)。我在所有更改后重新部署。启用CORS后,我不再得到403,而是得到415。不确定下一步该做什么,因为Cloudwatch日志中没有任何内容 更多细节:我正在使用Lambda: 我有一个GET方法(“选项”在我启用CORS后出现): 下面是我单击

我有一个AWS Lambda函数,我已经设置好了,正在尝试从前端命中它。它在浏览器中运行良好,并返回我期望的响应。当我尝试从
localhost
点击它时,我得到一个403。我试图按照概述的步骤进行操作,但没有成功(除了一些评论提到的吹掉我的整个API)。我在所有更改后重新部署。启用CORS后,我不再得到403,而是得到415。不确定下一步该做什么,因为Cloudwatch日志中没有任何内容

更多细节:我正在使用Lambda:

我有一个GET方法(“选项”在我启用CORS后出现):

下面是我单击“启用CORS”时发生的情况:

因为它在截图中被切掉了,下面是标题的完整列表:“内容类型,X-Amz-Date,授权,X-Api-Key,X-Amz-Security-Token”

以下是我的方法响应:

以下是我如何在前端调用我的lambda:

sendVerificationCode(){
让数据={
paramOne:x,
参数二:“字符串”,
第三条:“字符串”
}
返回此.get('ajax')。请求('ajax')https://something.execute-api.us-east-1.amazonaws.com/beta/', {
主持人:'https://something.execute-api.us-east-1.amazonaws.com',
方法:“GET”,
数据:数据
})。然后((响应)=>{
console.log('response',response)
});

}
CORS对API网关有点挑剔,您是否尝试过在根目录和方法上启用它?这以前对我很有效。此外,您还可以尝试下载api网关项目的javascript SDK,并使用它来点击路径,因为它为您设置了所有正确的设置。

可能重复Hii kira。我认为在您使用lambda代理并手动发送cors头之前,已经问过这个问题,如接受的回答中所述!你能解释一下为什么我应该使用Lambda代理而不是Lambda吗?对于Lambda,一定有办法做到这一点。我这么说是因为我自己在没有Lambda代理的情况下做了很多尝试,经过很多努力,我失败了,转而使用Lambda代理,同样的事情也发生在其他人身上。谢谢你的提示!由于某种原因,在根目录上禁用的选项被禁用。