相关疑难解决方法(0)

如何获取 Spring 5 WebSocket API 中的所有活动会话?

我在经典 Spring 5 WebSocket API 的帮助下编写了 WebSocket 应用程序,即不使用 SockJS 和 STOMP。我在获取所有活动的 http 会话时遇到问题。我可以获取一个当前会话,但如何获取所有活动会话?如果我使用经典的 Java API(JSR356),我会使用一个方法:session.getOpenSessions() 来获取所有打开的会话。但我在 Spring 5 WebSocket API 中找不到类似的方法。如何获取所有活动会话?

//Configuration of WebSocket.

@Configuration
@EnableWebSocket
public class WebSocketConfig implements 
WebSocketConfigurer {

@Override
public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) {
  //Map endpoint URL to handler's method.
  //Add interceptor of HTTP-handshake to copy HTTP-session's attributes to WebSocket-session's attributes.
  registry.addHandler(getWsEndpoint(), "/endpoint").addInterceptors(new HttpSessionHandshakeInterceptor());
}

@Bean
public WebSocketHandler getWsEndpoint() {
    return new WsEndpoint();
}
}
Run Code Online (Sandbox Code Playgroud)

我的 WebSocket 端点:

// WebSocket endpoint class. 

public class WsEndpoint extends …
Run Code Online (Sandbox Code Playgroud)

session websocket

8
推荐指数
1
解决办法
1万
查看次数

标签 统计

session ×1

websocket ×1