Websocket API 未返回答案 AWS

Websocket API not returning answers AWS

我有一个非常简单的 Websocket API 托管在 AWS 中。
我将此 API 与代码为 :

Lambda 函数集成
import json


def lambda_handler(event, context):
    print(event)
    return {
        "isBase64Encoded": False,
        "statusCode": 200,
        "headers": {"Content-Type": "application/json"},
        "body": json.dumps(event)
    }

我还为双向通信添加了集成响应,如此documentation

下面是我使用 wscat 和命令进行的测试:wscat -c myapiendpoint

如您所见,我已成功连接,如果我从 request.body.action 选择 (sendMessage) 中写入现有路由,则没有错误,但没有输出。如果我写错了路由(test 我没有在 API 网关控制台中创建),我会收到一条错误消息。

我也尝试过使用更简单的函数输出,none 正在运行。我终于按照documentation.

中所述写出了上面的代码

我只是希望能够在调用路由时向客户端发送回自定义消息(实际上是我数据库中的数据)。
这实际上也是我想要的 $connect$disconnect 路线。

我是不是做错了什么?

编辑:

这是我的 API 路由网关设置:

这是关于Lambda权限的截图。顺便说一下,这些是我所有 Lambda(在 HTTP APIs 下)的权限,它们都可以正常工作:

您的 Lambda 函数似乎没有权限将 post 消息发送到 API 网关连接。尝试为您的 Lambda 函数授予对 API 网关资源执行 execute-api:ManageConnections 操作的权限。

有时,这可能是您的情况,您没有将更改部署到您的 WebSocket API。 当我使用 HTTP APIs 而不是 WebSocket APIs.

使用自动阶段部署时,这发生在我身上