Как отключить клиента от веб-сокета? - PullRequest
0 голосов
/ 19 февраля 2019

Существует такой ChannelInterceptor с методом preSend:

@Override
public Message <?> preSend (Message <?> message, MessageChannel channel) {

     LOGGER.info ("WEBSOCKETCHANNELINTERCEPTOR ->" + message.toString ());

     StompHeaderAccessor accessor = MessageHeaderAccessor.getAccessor (message, StompHeaderAccessor.class);

     if (accessor! = null && StompCommand.CONNECT.equals (accessor.getCommand ())) {
         List <String> headers = accessor.getNativeHeader (AUTHORIZATION);
         accessor.setUser (websocketAuthenticationManager.authenticate (new JWTTokenAuthentication (tokenUtils.resolveToken (headers! = null? headers.get (0): null))));

     }

     return message;
}

В случае любой ошибки с CONNECT я хочу отключить пользователя от веб-сокета.как это сделать?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...