【问题标题】:How can I send request to API Gateway via websocket?如何通过 websocket 向 API Gateway 发送请求?
【发布时间】:2020-09-09 06:25:25
【问题描述】:

我用 websocket 创建了一个 API 网关。我在 $connect 路由中向我的 lambda 添加了请求/响应集成。然后我将 API 部署到登台,我可以看到在登台页面上生成了一个 wsshttps URL。 然后我使用wscat命令来测试websocket连接:

wscat -c wss://xxxx.execute-api.ap-southeast-2.amazonaws.com/dev

但我收到错误回复:error: Unexpected server response: 500

我没有对 API 进行任何身份验证。而且我检查了我的 lambda 日志,它没有被调用。这意味着请求在 API 网关上失败。我的 API 网关可能出现什么错误?

【问题讨论】:

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


    【解决方案1】:

    您将 $connect 路由集成到的 lambda 需要由 apigateway 调用的权限。

    添加以下权限:

    委托人:apigateway.amazonaws.com

    效果:允许

    动作:lambda:InvokeFunction

    还可以为 API Gateway 启用 Cloudwatch 日志,以便更好地了解如果它在到达您的 lambda 之前失败会发生什么。

    阶段 -> 日志/跟踪 -> CloudWatch 设置 -> 启用 CloudWatch 日志

    【讨论】:

      猜你喜欢
      • 2020-02-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-09
      相关资源
      最近更新 更多