【问题标题】:How to deploy API into API Gateway stage using AWS CLI?如何使用 AWS CLI 将 API 部署到 API Gateway 阶段?
【发布时间】:2021-01-29 16:52:53
【问题描述】:

我正在尝试使用 AWS CLI 将 lambda 函数部署到 API Gateway。我正在使用aws apigateway put-integrationaws apigateway put-integration-response 来更新集成部分。我能做到这部分。下一步是我想将此 API 部署到阶段。我正在使用aws apigateway create-deployment --rest-api-id 1234123412 --stage-name dev。但是当我在部署后测试 API 时,我收到错误消息 Internal server error。当我转到 API Gateway 控制台和 Integration Request 并单击 Lambda 函数 的编辑按钮并且不修改函数名称时,API 工作正常,然后返回并手动部署.但我无法使用 AWS CLI 让它工作。有没有办法解决这个问题?

【问题讨论】:

  • 如果您从 CLI 执行所有操作,您是否在 lambda 函数上设置了正确的调用权限?控制台会自动执行此操作,而不是 CLI。
  • @Marcin 是的,我正在尝试从 CLI 执行所有操作。我不确定。如何检查或设置调用权限?

标签: amazon-web-services aws-lambda aws-api-gateway aws-cli


【解决方案1】:

我相信您需要调用 updateStage api 并使用新的 deploymentId 修补阶段。 https://docs.aws.amazon.com/cli/latest/reference/apigateway/update-stage.html

补丁操作:

op: replace
path: /deploymentId
value: <id from create-deployment>. 

https://docs.aws.amazon.com/apigateway/latest/developerguide/set-up-deployments.html

【讨论】:

    猜你喜欢
    • 2018-11-12
    • 1970-01-01
    • 2018-12-26
    • 2018-01-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-10
    相关资源
    最近更新 更多