我有两个版本的AWS Lambda函数 . 我想将它附加到API Gateway,dev和prod的两个阶段 .

我为Lambda函数的两个版本创建了两个别名 devprod . 我创建了一个名为 fname 的阶段变量,并在适当的阶段为它们提供值dev和prod .

针对要在参考资料部分调用的Lambda函数,我提供了函数名称 stageTester:${stageVariables.fname} ,其中stageTester是我的函数的名称 .

它促使我使用AWS CLI附加权限 . 我运行了以下命令:

aws lambda add-permission --function-name arn:aws:lambda:ap-south-1:xxxxxxx:function:stageTester:dev --source-arn 'arn:aws:execute-api:ap-south-1:zzzzzz:aaaaaa/*/GET/stageTester' --principal apigateway.amazonaws.com --statement-id cxbxcx9bx5-68df-4x9d-96xd-9exb497xa934 --action lambda:InvokeFunction --profile lambdaUser --region ap-south-1

...和类似的产品 . 我希望这会适当地附加权限 .

我完成了部署并尝试调用API . 但是,我每次都遇到内部服务器错误 . 在Lambda功能屏幕中,针对触发器,我看到以下错误

具有ID aaaaaa的API不包含具有路径/ stageTester的资源,其具有集成arn:aws:lambda:ap-south-1:xxxxxxx:function:stageTester:GET方法上的dev

有人可以帮我解决这个问题吗?