我试图实现 websocket 服务器,要求是在同一个端口上有多个上下文,即
ws://ip:8989/provider1
ws://ip:8989/provider2
应该提供两个不同的连接,但在同一个端口上。
我已关注旧文章如何创建嵌入式 WebSocket 服务器 Jetty 9?创建上下文处理程序。
我尝试下面的代码来创建两个单独的上下文
ContextHandler context = new ContextHandler();
context.setContextPath("/provider1");
context.setHandler(wsHandler);
server.addHandler(context);
ContextHandler context = new ContextHandler();
context.setContextPath("/provider2");
context.setHandler(wsHandler);
server.addHandler(context);
server.start();
server.join();
但我只在第二个上下文中获取数据。这是正确的实现吗?
即使我让它工作了,我也有最终要求,我必须即时打开/创建上下文,即在使用第一个上下文启动服务器之后。
有人可以解释如何使用单端口来实现这些要求吗?