雀巢公司+;从microservice以嵌套路径而不是主机根路径提供WebSocket的socket.io始终返回404 Not Found
我将socket.io实现用于nestjs。我的总体生产架构依赖于负载平衡器将请求路由到微服务容器的路径上 其中一个包含与用户数据交互的websocket,嵌套在雀巢公司+;从microservice以嵌套路径而不是主机根路径提供WebSocket的socket.io始终返回404 Not Found,websocket,socket.io,nestjs,nestjs-gateways,Websocket,Socket.io,Nestjs,Nestjs Gateways,我将socket.io实现用于nestjs。我的总体生产架构依赖于负载平衡器将请求路由到微服务容器的路径上 其中一个包含与用户数据交互的websocket,嵌套在mydomain.com/api/user 在我的网关上,我已将其配置为使用以下路径: @WebSocketGateway({ path: "/apis/user/gateway", namespace: "/apis/user/gateway" }) 我也尝试过不使用名称空间,只使用路径的变体
mydomain.com/api/user
在我的网关上,我已将其配置为使用以下路径:
@WebSocketGateway({ path: "/apis/user/gateway", namespace: "/apis/user/gateway" })
我也尝试过不使用名称空间,只使用路径的变体
我还有一个全局前缀:app.setGlobalPrefix(“api/user”)代码>删除它没有什么区别,似乎我需要定义到网关的路径,不管是否使用前缀
然后,在客户端上,我尝试通过在url中添加路径或添加到options对象来连接它,例如:
const endpoint = "https://example.com/apis/user/gateway";
socket = io(endpoint, {
secure: true,
path: "/apis/user/gateway",
});
这适用于嵌套在其中的网关上的path和handleConnection触发器,但是在后端配置轮询不起作用,客户端仍会抛出:
https://example.com/apis/user/gateway/?EIO=4&transport=polling&t=NXVpMfB 404 Not Found