【发布时间】:2017-07-03 18:27:57
【问题描述】:
如何在 Java Spring WebSocketStompClient 中获取会话 ID?
我有 WebSocketStompClient 和 StompSessionHandlerAdapter,它们可以很好地连接到我服务器上的 websocket。 WebSocketStompClient 使用 SockJsClient.
但我不知道如何获取 websocket 连接的会话 ID。在客户端带有 stomp 会话处理程序的代码中
private class ProducerStompSessionHandler extends StompSessionHandlerAdapter {
...
@Override
public void afterConnected(StompSession session, StompHeaders connectedHeaders) {
...
}
stomp session 包含 session id,与服务器上的 session id 不同。 所以从这个ID:
DEBUG ... Processing SockJS open frame in WebSocketClientSockJsSession[id='d6aaeacf90b84278b358528e7d96454a...
DEBUG ... DefaultStompSession - Connection established in session id=42e95c88-cbc9-642d-2ff9-e5c98fb85754
我需要来自 WebSocketClientSockJsSession 的第一个会话 ID。 但是我没有在 WebSocketStompClient 或 SockJsClient 中找到任何方法来检索会话 id 之类的内容...
【问题讨论】:
标签: java spring session stomp spring-websocket