AWS.ApiGatewayManagementApi BadRequestException:无效的connectionId

时间:2020-07-28 14:29:47

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

我正在使用Websocket API网关,并且尝试使用 ApiGatewayManagementApi 将消息发送到连接。

首先,我对其进行配置:

 const apigwManagementApi = new AWS.ApiGatewayManagementApi({
    apiVersion: "2018-11-29",
    endpoint: connectionsUrl
  });

这是postToConnection()的代码

try {
    const params = {
      ConnectionId: connection.connectionId,
      Data: JSON.stringify(data.payload)
    };


    console.log(params, connectionsUrl);
    //THIS PRINTS: { ConnectionId: 'ckd609nog0009sgp847cj3lgy', Data: '{}' } 
         https://xxxxxxxx.execute-api.xxxxxx.amazonaws.com/socket-test




      await apigwManagementApi.postToConnection(params).promise();
} catch (e) {
      console.error('APIGW Post To Connection ERROR:', e);
      if (e.statusCode == 410) {
        let res = await this.DisconnectConnection(connection.connectionId);
        if (res.isError()) {
          return ServiceResponse.Error(res.error)
        }
        return ServiceResponse.Error(res.error)
      } else {
        return ServiceResponse.Error({message: e.message});
      }
    }

我在记录错误的地方得到的错误是:

** APIGW发布到连接错误:BadRequestException:无效的connectionId:ckd609nog0009sgp847cj3lgy **

这不是陈旧的连接。这种用例是我连接到WebSocket并向套接字发送消息的过程,它执行某些操作并通过postToConnection方法返回结果。

出什么问题了?

0 个答案:

没有答案