在即时通讯中,为了实现一个账户同一时刻只能在一台设备上登录。
例如:有两囼手机A和B账号Account
当Account已经在手机A上登录,如果要在手机B上登录账号Account,就必须强制断开手机A与服务器建立的WebSocket连接而且在断开连接之前需要往手機A返回一些信息,表示已经被另外一个用户强制登录了
这种方式的话即使在调用之前,先调用flush刷新输出流手机A还是会收不到信息。
解決的方法是:在自己实现的MessageInbound中再写一个public方法调用onClose方法,因为onClose是protected的在包外或者不是它的子类就不能访问它,所以才要写一个public方法
在需偠强制退出的地方调用以上函数就可以了。