如何从断开消息中获取目的地?
How to get destination from disconnect message?
我在 Spring 启动时有一个 WebSocket 应用程序。我使用 STOMP,当用户关闭选项卡(与 WS 断开连接)时,我需要获取目标路径。我使用 @EventListener
拦截断开连接或从 ChannelInterceptor
扩展并覆盖 preSend()
.
我尝试了很多方法 - StompHeaderAccessor.getDestination()
、SessionDisconnectEvent.getMessage().getHeaders().get("simpDestination")
等,但它们都 return 无效。有没有一种可行的方法来获取路径?也许不使用拦截器,以某种方式不同?
我不能说 Spring 细节,但我认为从 Stomp 的角度来看,您想要的信息不可用。如 Stomp 1.2 specification, the DISCONNECT
frame doesn't use any kind of destination header. The only possible header is receipt
. The semantics of receipts are explained here.
中所述
我在 Spring 启动时有一个 WebSocket 应用程序。我使用 STOMP,当用户关闭选项卡(与 WS 断开连接)时,我需要获取目标路径。我使用 @EventListener
拦截断开连接或从 ChannelInterceptor
扩展并覆盖 preSend()
.
我尝试了很多方法 - StompHeaderAccessor.getDestination()
、SessionDisconnectEvent.getMessage().getHeaders().get("simpDestination")
等,但它们都 return 无效。有没有一种可行的方法来获取路径?也许不使用拦截器,以某种方式不同?
我不能说 Spring 细节,但我认为从 Stomp 的角度来看,您想要的信息不可用。如 Stomp 1.2 specification, the DISCONNECT
frame doesn't use any kind of destination header. The only possible header is receipt
. The semantics of receipts are explained here.