使用带有bash脚本的API网关公开AWS Lambda函数

时间:2019-07-15 07:26:47

标签: bash amazon-web-services aws-lambda aws-cli

我的bash脚本中有错误,无法使用api网关发布lambda函数。 您可以在https://gist.github.com/goforbroke1006/7a6c86470a8465ec2302f13d4455094d

中找到脚本

如果我通过Web AWS控制台界面创建资源+方法+集成,则一切工作正常:

working sample

但是如果我使用bash脚本,我会得到这个

enter image description here

可识别的lambda函数为空,API方法测试返回

{"message": "Internal server error"}

此脚本有什么问题? 也许我的功能集成网址无效。我不知道如何构建此URL或在哪里可以复制它,所以我使用此模板

arn:aws:apigateway:${REGION_NAME_WHAT_I_USE_4_LAMBDA_AND_API}:lambda:path//2015-03-31/functions/${FUNCTION_ARN_URL_COPIED_ON_EDIT_FUNC_PANEL_IN_AWS_CONSOLE}

1 个答案:

答案 0 :(得分:0)

您的Lambda函数是否具有API网关触发器?

控制台会添加适当的授权,以允许API Gateway调用Lambda函数,但如果以编程方式执行此操作,则还需要在Lambda级别添加授权

https://docs.aws.amazon.com/cli/latest/reference/lambda/add-permission.html

此外,我们不建议使用bash部署基础结构,因为它不支持更新或删除。使用CDKSAM代替