首页 > 解决方案 > AWS API Gateway WebSocket 的自定义端点路径

问题描述

我用 Websocket 协议创建了一个 API 网关。部署 API 后,我得到一个 WebSocket URL 和一个连接 URL。

例如

网络套接字网址:wss://xxxx.execute-api.us-west-2.amazonaws.com/test

连接网址:https://xxxx.execute-api.us-west-2.amazonaws.com/test/@connections

现在一切都很好,我可以连接到 API 并发送和接收消息。但是当我尝试访问不同的路径时,我收到了 HTTP 403 错误。

例如,如果我尝试连接到wss://xxxx.execute-api.us-west-2.amazonaws.com/test/some/path ,我会收到 403 错误。

是否可以配置 API 网关,使其接受到所有路径的连接并在路径上传递,即/some/path在我的情况下,传递给$connect路由处理程序?

标签: aws-api-gateway

解决方案


AWS 尚不支持此功能。请参阅此处的文章和评论https://medium.com/@lancers/using-parameter-mapping-in-websocket-api-67b414376d5e

使用附加服务器有一个解决方法,文章作者提出以下建议:您可以放置​​自己的服务器,接受带有路径参数的 URI,然后返回 302 以将客户端重定向到带有查询字符串的 WebSocket API 端点。


推荐阅读